@lablup/ui-common 0.1.0-alpha.0
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/LICENSE +202 -0
- package/NOTICE +10 -0
- package/README.md +145 -0
- package/dist/assets/components/Badge/Badge.css +1 -0
- package/dist/assets/components/BaseCard/BaseCard.css +1 -0
- package/dist/assets/components/Button/Button.css +1 -0
- package/dist/assets/components/DataTable/DataTable.css +1 -0
- package/dist/assets/components/Drawer/Drawer.css +1 -0
- package/dist/assets/components/EmptyState/EmptyState.css +1 -0
- package/dist/assets/components/ErrorState/ErrorState.css +1 -0
- package/dist/assets/components/PageHeader/PageHeader.css +1 -0
- package/dist/assets/components/PageLayout/PageLayout.css +1 -0
- package/dist/assets/components/ProgressBar/ProgressBar.css +1 -0
- package/dist/assets/components/Skeleton/Skeleton.css +1 -0
- package/dist/assets/components/Skeleton/SkeletonCard.css +1 -0
- package/dist/assets/components/Skeleton/SkeletonChart.css +1 -0
- package/dist/assets/components/Skeleton/SkeletonRow.css +1 -0
- package/dist/assets/components/Skeleton/SkeletonText.css +1 -0
- package/dist/assets/components/SmoothHeight/SmoothHeight.css +1 -0
- package/dist/assets/components/StatCard/StatCard.css +1 -0
- package/dist/assets/components/StatusTag/StatusTag.css +1 -0
- package/dist/assets/components/Tabs/Tabs.css +1 -0
- package/dist/assets/components/Tooltip/Tooltip.css +1 -0
- package/dist/components/Badge/Badge.d.ts +7 -0
- package/dist/components/Badge/Badge2.js +19 -0
- package/dist/components/Badge/Badge2.js.map +1 -0
- package/dist/components/Badge/index.d.ts +2 -0
- package/dist/components/Badge/index.js +2 -0
- package/dist/components/BaseCard/BaseCard.d.ts +57 -0
- package/dist/components/BaseCard/BaseCard2.js +36 -0
- package/dist/components/BaseCard/BaseCard2.js.map +1 -0
- package/dist/components/BaseCard/index.d.ts +2 -0
- package/dist/components/BaseCard/index.js +2 -0
- package/dist/components/Button/Button.d.ts +54 -0
- package/dist/components/Button/Button2.js +74 -0
- package/dist/components/Button/Button2.js.map +1 -0
- package/dist/components/Button/index.d.ts +5 -0
- package/dist/components/Button/index.js +2 -0
- package/dist/components/DataTable/DataTable.d.ts +133 -0
- package/dist/components/DataTable/DataTable2.js +276 -0
- package/dist/components/DataTable/DataTable2.js.map +1 -0
- package/dist/components/DataTable/index.d.ts +2 -0
- package/dist/components/DataTable/index.js +2 -0
- package/dist/components/Drawer/Drawer.d.ts +25 -0
- package/dist/components/Drawer/Drawer2.js +106 -0
- package/dist/components/Drawer/Drawer2.js.map +1 -0
- package/dist/components/Drawer/index.d.ts +2 -0
- package/dist/components/Drawer/index.js +2 -0
- package/dist/components/EmptyState/EmptyState.d.ts +45 -0
- package/dist/components/EmptyState/EmptyState.example.d.ts +8 -0
- package/dist/components/EmptyState/EmptyState2.js +78 -0
- package/dist/components/EmptyState/EmptyState2.js.map +1 -0
- package/dist/components/EmptyState/illustrations.d.ts +51 -0
- package/dist/components/EmptyState/illustrations.js +571 -0
- package/dist/components/EmptyState/illustrations.js.map +1 -0
- package/dist/components/EmptyState/index.d.ts +5 -0
- package/dist/components/EmptyState/index.js +2 -0
- package/dist/components/ErrorState/ErrorState.d.ts +25 -0
- package/dist/components/ErrorState/ErrorState.example.d.ts +46 -0
- package/dist/components/ErrorState/ErrorState2.js +58 -0
- package/dist/components/ErrorState/ErrorState2.js.map +1 -0
- package/dist/components/ErrorState/index.d.ts +5 -0
- package/dist/components/ErrorState/index.js +2 -0
- package/dist/components/PageHeader/PageHeader.d.ts +18 -0
- package/dist/components/PageHeader/PageHeader2.js +42 -0
- package/dist/components/PageHeader/PageHeader2.js.map +1 -0
- package/dist/components/PageHeader/index.d.ts +2 -0
- package/dist/components/PageHeader/index.js +2 -0
- package/dist/components/PageLayout/PageLayout.d.ts +11 -0
- package/dist/components/PageLayout/PageLayout2.js +19 -0
- package/dist/components/PageLayout/PageLayout2.js.map +1 -0
- package/dist/components/PageLayout/index.d.ts +2 -0
- package/dist/components/PageLayout/index.js +2 -0
- package/dist/components/ProgressBar/ProgressBar.d.ts +22 -0
- package/dist/components/ProgressBar/ProgressBar2.js +36 -0
- package/dist/components/ProgressBar/ProgressBar2.js.map +1 -0
- package/dist/components/ProgressBar/index.d.ts +2 -0
- package/dist/components/ProgressBar/index.js +2 -0
- package/dist/components/Skeleton/Skeleton.d.ts +25 -0
- package/dist/components/Skeleton/Skeleton2.js +26 -0
- package/dist/components/Skeleton/Skeleton2.js.map +1 -0
- package/dist/components/Skeleton/SkeletonCard.d.ts +18 -0
- package/dist/components/Skeleton/SkeletonCard2.js +73 -0
- package/dist/components/Skeleton/SkeletonCard2.js.map +1 -0
- package/dist/components/Skeleton/SkeletonChart.d.ts +23 -0
- package/dist/components/Skeleton/SkeletonChart2.js +66 -0
- package/dist/components/Skeleton/SkeletonChart2.js.map +1 -0
- package/dist/components/Skeleton/SkeletonRow.d.ts +22 -0
- package/dist/components/Skeleton/SkeletonRow2.js +47 -0
- package/dist/components/Skeleton/SkeletonRow2.js.map +1 -0
- package/dist/components/Skeleton/SkeletonText.d.ts +20 -0
- package/dist/components/Skeleton/SkeletonText2.js +26 -0
- package/dist/components/Skeleton/SkeletonText2.js.map +1 -0
- package/dist/components/Skeleton/index.d.ts +15 -0
- package/dist/components/Skeleton/index.js +6 -0
- package/dist/components/SmoothHeight/SmoothHeight.d.ts +9 -0
- package/dist/components/SmoothHeight/SmoothHeight2.js +38 -0
- package/dist/components/SmoothHeight/SmoothHeight2.js.map +1 -0
- package/dist/components/SmoothHeight/index.d.ts +2 -0
- package/dist/components/SmoothHeight/index.js +2 -0
- package/dist/components/StatCard/StatCard.d.ts +59 -0
- package/dist/components/StatCard/StatCard2.js +111 -0
- package/dist/components/StatCard/StatCard2.js.map +1 -0
- package/dist/components/StatCard/formatters.d.ts +12 -0
- package/dist/components/StatCard/formatters.js +8 -0
- package/dist/components/StatCard/formatters.js.map +1 -0
- package/dist/components/StatCard/index.d.ts +3 -0
- package/dist/components/StatCard/index.js +3 -0
- package/dist/components/StatusTag/StatusTag.d.ts +38 -0
- package/dist/components/StatusTag/StatusTag2.js +44 -0
- package/dist/components/StatusTag/StatusTag2.js.map +1 -0
- package/dist/components/StatusTag/index.d.ts +2 -0
- package/dist/components/StatusTag/index.js +2 -0
- package/dist/components/Tabs/Tabs.d.ts +107 -0
- package/dist/components/Tabs/Tabs2.js +430 -0
- package/dist/components/Tabs/Tabs2.js.map +1 -0
- package/dist/components/Tabs/index.d.ts +2 -0
- package/dist/components/Tabs/index.js +3 -0
- package/dist/components/Tabs/tabTags.d.ts +9 -0
- package/dist/components/Tabs/tabTags.js +11 -0
- package/dist/components/Tabs/tabTags.js.map +1 -0
- package/dist/components/Tooltip/Tooltip.d.ts +16 -0
- package/dist/components/Tooltip/Tooltip2.js +67 -0
- package/dist/components/Tooltip/Tooltip2.js.map +1 -0
- package/dist/components/Tooltip/index.d.ts +2 -0
- package/dist/components/Tooltip/index.js +2 -0
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/index.js +2 -0
- package/dist/hooks/usePrefersReducedMotion.d.ts +12 -0
- package/dist/hooks/usePrefersReducedMotion.js +22 -0
- package/dist/hooks/usePrefersReducedMotion.js.map +1 -0
- package/dist/icons/AlertCircleIcon.d.ts +11 -0
- package/dist/icons/AlertCircleIcon.js +26 -0
- package/dist/icons/AlertCircleIcon.js.map +1 -0
- package/dist/index.d.ts +29 -0
- package/dist/index.js +24 -0
- package/dist/styles/base.css +169 -0
- package/dist/styles/themes/bliss-dark.css +123 -0
- package/dist/styles/themes/bliss-light.css +123 -0
- package/dist/styles/themes/glass-dark.css +124 -0
- package/dist/styles/themes/glass-light.css +125 -0
- package/dist/styles/themes/orange-dark.css +70 -0
- package/dist/styles/themes/orange-light.css +70 -0
- package/dist/styles/themes/reverie-dark.css +104 -0
- package/dist/styles/themes/reverie-light.css +104 -0
- package/dist/styles/themes/stained-dark.css +80 -0
- package/dist/styles/themes/stained-light.css +80 -0
- package/package.json +87 -0
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @lablup/ui-common theme tokens: reverie-light
|
|
3
|
+
*
|
|
4
|
+
* Overrides for the subset of the 104-token contract (see
|
|
5
|
+
* ../base.css) that this theme customizes. Import at most one
|
|
6
|
+
* theme file alongside base.css; components never import a
|
|
7
|
+
* theme file themselves.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
[data-theme="reverie-light"] {
|
|
11
|
+
--token-boxShadow:
|
|
12
|
+
0 1px 2px 0 rgba(0, 0, 0, 0.03), 0 1px 6px -1px rgba(0, 0, 0, 0.02),
|
|
13
|
+
0 2px 4px 0 rgba(0, 0, 0, 0.02);
|
|
14
|
+
--token-boxShadowSecondary:
|
|
15
|
+
0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12),
|
|
16
|
+
0 9px 28px 8px rgba(0, 0, 0, 0.05);
|
|
17
|
+
--token-buttonGhostBackdrop: none;
|
|
18
|
+
--token-buttonGhostBg: rgba(251, 113, 133, 0.03);
|
|
19
|
+
--token-buttonGhostBgHover: rgba(251, 113, 133, 0.08);
|
|
20
|
+
--token-buttonGhostBorder: 1px solid transparent;
|
|
21
|
+
--token-buttonGhostShadow: none;
|
|
22
|
+
--token-buttonGhostShadowHover: 0 0 12px rgba(251, 113, 133, 0.08);
|
|
23
|
+
--token-buttonPrimaryBg:
|
|
24
|
+
linear-gradient(
|
|
25
|
+
180deg,
|
|
26
|
+
rgba(255, 255, 255, 0.3) 0%,
|
|
27
|
+
rgba(255, 255, 255, 0.05) 50%,
|
|
28
|
+
transparent 100%
|
|
29
|
+
),
|
|
30
|
+
var(--token-colorPrimary);
|
|
31
|
+
--token-buttonPrimaryBgHover:
|
|
32
|
+
linear-gradient(
|
|
33
|
+
180deg,
|
|
34
|
+
rgba(255, 255, 255, 0.4) 0%,
|
|
35
|
+
rgba(255, 255, 255, 0.1) 50%,
|
|
36
|
+
transparent 100%
|
|
37
|
+
),
|
|
38
|
+
#f43f5e;
|
|
39
|
+
--token-buttonPrimaryBorder: 1px solid rgba(255, 255, 255, 0.25);
|
|
40
|
+
--token-buttonPrimaryShadow:
|
|
41
|
+
0 2px 8px rgba(251, 113, 133, 0.3), 0 0 16px rgba(251, 113, 133, 0.1),
|
|
42
|
+
inset 0 1px 1px rgba(255, 255, 255, 0.3);
|
|
43
|
+
--token-buttonPrimaryShadowHover:
|
|
44
|
+
0 4px 12px rgba(251, 113, 133, 0.4), 0 0 20px rgba(251, 113, 133, 0.15),
|
|
45
|
+
inset 0 1px 1px rgba(255, 255, 255, 0.4);
|
|
46
|
+
--token-buttonSecondaryBackdrop: blur(4px);
|
|
47
|
+
--token-buttonSecondaryBg: rgba(251, 113, 133, 0.06);
|
|
48
|
+
--token-buttonSecondaryBgHover: rgba(251, 113, 133, 0.1);
|
|
49
|
+
--token-buttonSecondaryBorder: 1px solid rgba(251, 113, 133, 0.2);
|
|
50
|
+
--token-buttonSecondaryBorderHover: 1px solid rgba(251, 113, 133, 0.35);
|
|
51
|
+
--token-buttonSecondaryShadow:
|
|
52
|
+
0 1px 4px rgba(0, 0, 0, 0.04), inset 0 1px 0 rgba(255, 255, 255, 0.7);
|
|
53
|
+
--token-buttonSuccessBg:
|
|
54
|
+
linear-gradient(
|
|
55
|
+
180deg,
|
|
56
|
+
rgba(255, 255, 255, 0.3) 0%,
|
|
57
|
+
rgba(255, 255, 255, 0.05) 50%,
|
|
58
|
+
transparent 100%
|
|
59
|
+
),
|
|
60
|
+
var(--token-colorSuccess);
|
|
61
|
+
--token-buttonSuccessBgHover:
|
|
62
|
+
linear-gradient(
|
|
63
|
+
180deg,
|
|
64
|
+
rgba(255, 255, 255, 0.4) 0%,
|
|
65
|
+
rgba(255, 255, 255, 0.1) 50%,
|
|
66
|
+
transparent 100%
|
|
67
|
+
),
|
|
68
|
+
#006654;
|
|
69
|
+
--token-buttonSuccessBorder: 1px solid rgba(255, 255, 255, 0.25);
|
|
70
|
+
--token-buttonSuccessShadow:
|
|
71
|
+
0 2px 8px rgba(0, 189, 155, 0.25), inset 0 1px 1px rgba(255, 255, 255, 0.3);
|
|
72
|
+
--token-colorBgContainer: #ffffff;
|
|
73
|
+
--token-colorBgElevated: #ffffff;
|
|
74
|
+
--token-colorBgLayout: #f5f5f5;
|
|
75
|
+
--token-colorBorder: #d9d9d9;
|
|
76
|
+
--token-colorBorderSecondary: #e5e7eb;
|
|
77
|
+
--token-colorError: #c82333;
|
|
78
|
+
--token-colorFillQuaternary: #fafafa;
|
|
79
|
+
--token-colorFillSecondary: #f3f4f6;
|
|
80
|
+
--token-colorFillTertiary: #f9fafb;
|
|
81
|
+
--token-colorInfo: #0066cc;
|
|
82
|
+
--token-colorLink: #fb7185;
|
|
83
|
+
--token-colorPrimary: #fb7185;
|
|
84
|
+
--token-colorPrimaryActive: #e11d48;
|
|
85
|
+
--token-colorPrimaryBg: rgba(251, 113, 133, 0.1);
|
|
86
|
+
--token-colorPrimaryBorder: rgba(251, 113, 133, 0.2);
|
|
87
|
+
--token-colorSuccess: #007a63;
|
|
88
|
+
--token-colorSuccessActive: #005244;
|
|
89
|
+
--token-colorSuccessBg: rgba(0, 189, 155, 0.05);
|
|
90
|
+
--token-colorSuccessBorder: rgba(0, 189, 155, 0.4);
|
|
91
|
+
--token-colorSuccessBorderHover: rgba(0, 189, 155, 0.6);
|
|
92
|
+
--token-colorSuccessBoxShadow: 0 4px 12px rgba(0, 189, 155, 0.15);
|
|
93
|
+
--token-colorText: #141414;
|
|
94
|
+
--token-colorTextSecondary: #595959;
|
|
95
|
+
--token-colorTextTertiary: #737373;
|
|
96
|
+
--token-colorWarning: #9a5d00;
|
|
97
|
+
--token-focusRingColor: #fb7185;
|
|
98
|
+
--token-focusRingOffset: 2px;
|
|
99
|
+
--token-focusRingStyle: solid;
|
|
100
|
+
--token-focusRingWidth: 2px;
|
|
101
|
+
--token-tabActiveBg: rgba(251, 113, 133, 0.1);
|
|
102
|
+
--token-tabFocusShadow: 0 0 0 3px rgba(251, 113, 133, 0.15);
|
|
103
|
+
--token-tabHoverBg: var(--token-colorFillSecondary);
|
|
104
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @lablup/ui-common theme tokens: stained-dark
|
|
3
|
+
*
|
|
4
|
+
* Overrides for the subset of the 104-token contract (see
|
|
5
|
+
* ../base.css) that this theme customizes. Import at most one
|
|
6
|
+
* theme file alongside base.css; components never import a
|
|
7
|
+
* theme file themselves.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
[data-theme="stained-dark"] {
|
|
11
|
+
--token-boxShadow:
|
|
12
|
+
0 1px 2px 0 rgba(0, 0, 0, 0.15), 0 1px 6px -1px rgba(0, 0, 0, 0.1),
|
|
13
|
+
0 2px 4px 0 rgba(0, 0, 0, 0.1);
|
|
14
|
+
--token-boxShadowSecondary:
|
|
15
|
+
0 6px 16px 0 rgba(0, 0, 0, 0.2), 0 3px 6px -4px rgba(0, 0, 0, 0.24),
|
|
16
|
+
0 9px 28px 8px rgba(0, 0, 0, 0.15);
|
|
17
|
+
--token-buttonGhostBackdrop: none;
|
|
18
|
+
--token-buttonGhostBg: transparent;
|
|
19
|
+
--token-buttonGhostBgHover: rgba(167, 139, 250, 0.1);
|
|
20
|
+
--token-buttonGhostBorder: 1px solid transparent;
|
|
21
|
+
--token-buttonGhostShadow: none;
|
|
22
|
+
--token-buttonGhostShadowHover: none;
|
|
23
|
+
--token-buttonPrimaryBg:
|
|
24
|
+
linear-gradient(180deg, rgba(255, 255, 255, 0.15) 0%, transparent 50%),
|
|
25
|
+
var(--token-colorPrimary);
|
|
26
|
+
--token-buttonPrimaryBgHover:
|
|
27
|
+
linear-gradient(180deg, rgba(255, 255, 255, 0.2) 0%, transparent 50%), #9575fa;
|
|
28
|
+
--token-buttonPrimaryBorder: none;
|
|
29
|
+
--token-buttonPrimaryShadow:
|
|
30
|
+
0 2px 8px rgba(167, 139, 250, 0.3), inset 0 1px 1px rgba(255, 255, 255, 0.15);
|
|
31
|
+
--token-buttonPrimaryShadowHover:
|
|
32
|
+
0 4px 12px rgba(167, 139, 250, 0.4), inset 0 1px 1px rgba(255, 255, 255, 0.2);
|
|
33
|
+
--token-buttonSecondaryBackdrop: none;
|
|
34
|
+
--token-buttonSecondaryBg: rgba(167, 139, 250, 0.08);
|
|
35
|
+
--token-buttonSecondaryBgHover: rgba(167, 139, 250, 0.12);
|
|
36
|
+
--token-buttonSecondaryBorder: 1px solid rgba(167, 139, 250, 0.2);
|
|
37
|
+
--token-buttonSecondaryBorderHover: 1px solid rgba(167, 139, 250, 0.3);
|
|
38
|
+
--token-buttonSecondaryShadow:
|
|
39
|
+
0 1px 3px rgba(0, 0, 0, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.05);
|
|
40
|
+
--token-buttonSuccessBg:
|
|
41
|
+
linear-gradient(180deg, rgba(255, 255, 255, 0.15) 0%, transparent 50%),
|
|
42
|
+
var(--token-colorSuccess);
|
|
43
|
+
--token-buttonSuccessBgHover:
|
|
44
|
+
linear-gradient(180deg, rgba(255, 255, 255, 0.2) 0%, transparent 50%), #04b898;
|
|
45
|
+
--token-buttonSuccessBorder: none;
|
|
46
|
+
--token-buttonSuccessShadow:
|
|
47
|
+
0 2px 8px rgba(3, 164, 135, 0.3), inset 0 1px 1px rgba(255, 255, 255, 0.15);
|
|
48
|
+
--token-colorBgContainer: #1f1f1f;
|
|
49
|
+
--token-colorBgElevated: #262626;
|
|
50
|
+
--token-colorBgLayout: #121212;
|
|
51
|
+
--token-colorBorder: #424242;
|
|
52
|
+
--token-colorBorderSecondary: #303030;
|
|
53
|
+
--token-colorError: #dc4446;
|
|
54
|
+
--token-colorFillQuaternary: rgba(255, 255, 255, 0.04);
|
|
55
|
+
--token-colorFillSecondary: #262626;
|
|
56
|
+
--token-colorFillTertiary: #1a1a1a;
|
|
57
|
+
--token-colorInfo: #009bdd;
|
|
58
|
+
--token-colorLink: #a78bfa;
|
|
59
|
+
--token-colorPrimary: #a78bfa;
|
|
60
|
+
--token-colorPrimaryActive: #8b5cf6;
|
|
61
|
+
--token-colorPrimaryBg: rgba(167, 139, 250, 0.12);
|
|
62
|
+
--token-colorPrimaryBorder: rgba(167, 139, 250, 0.25);
|
|
63
|
+
--token-colorSuccess: #03a487;
|
|
64
|
+
--token-colorSuccessActive: #05cca8;
|
|
65
|
+
--token-colorSuccessBg: rgba(3, 164, 135, 0.15);
|
|
66
|
+
--token-colorSuccessBorder: rgba(3, 164, 135, 0.4);
|
|
67
|
+
--token-colorSuccessBorderHover: rgba(3, 164, 135, 0.6);
|
|
68
|
+
--token-colorSuccessBoxShadow: 0 4px 12px rgba(3, 164, 135, 0.2);
|
|
69
|
+
--token-colorText: #ffffff;
|
|
70
|
+
--token-colorTextSecondary: #b3b3b3;
|
|
71
|
+
--token-colorTextTertiary: #8c8c8c;
|
|
72
|
+
--token-colorWarning: #d89614;
|
|
73
|
+
--token-focusRingColor: #a78bfa;
|
|
74
|
+
--token-focusRingOffset: 2px;
|
|
75
|
+
--token-focusRingStyle: solid;
|
|
76
|
+
--token-focusRingWidth: 2px;
|
|
77
|
+
--token-tabActiveBg: rgba(167, 139, 250, 0.1);
|
|
78
|
+
--token-tabFocusShadow: 0 0 0 3px rgba(167, 139, 250, 0.2);
|
|
79
|
+
--token-tabHoverBg: rgba(255, 255, 255, 0.05);
|
|
80
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @lablup/ui-common theme tokens: stained-light
|
|
3
|
+
*
|
|
4
|
+
* Overrides for the subset of the 104-token contract (see
|
|
5
|
+
* ../base.css) that this theme customizes. Import at most one
|
|
6
|
+
* theme file alongside base.css; components never import a
|
|
7
|
+
* theme file themselves.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
[data-theme="stained-light"] {
|
|
11
|
+
--token-boxShadow:
|
|
12
|
+
0 1px 2px 0 rgba(0, 0, 0, 0.03), 0 1px 6px -1px rgba(0, 0, 0, 0.02),
|
|
13
|
+
0 2px 4px 0 rgba(0, 0, 0, 0.02);
|
|
14
|
+
--token-boxShadowSecondary:
|
|
15
|
+
0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12),
|
|
16
|
+
0 9px 28px 8px rgba(0, 0, 0, 0.05);
|
|
17
|
+
--token-buttonGhostBackdrop: none;
|
|
18
|
+
--token-buttonGhostBg: transparent;
|
|
19
|
+
--token-buttonGhostBgHover: rgba(139, 92, 246, 0.06);
|
|
20
|
+
--token-buttonGhostBorder: 1px solid transparent;
|
|
21
|
+
--token-buttonGhostShadow: none;
|
|
22
|
+
--token-buttonGhostShadowHover: none;
|
|
23
|
+
--token-buttonPrimaryBg:
|
|
24
|
+
linear-gradient(180deg, rgba(255, 255, 255, 0.2) 0%, transparent 50%),
|
|
25
|
+
var(--token-colorPrimary);
|
|
26
|
+
--token-buttonPrimaryBgHover:
|
|
27
|
+
linear-gradient(180deg, rgba(255, 255, 255, 0.25) 0%, transparent 50%), #7c3aed;
|
|
28
|
+
--token-buttonPrimaryBorder: none;
|
|
29
|
+
--token-buttonPrimaryShadow:
|
|
30
|
+
0 2px 6px rgba(139, 92, 246, 0.25), inset 0 1px 1px rgba(255, 255, 255, 0.2);
|
|
31
|
+
--token-buttonPrimaryShadowHover:
|
|
32
|
+
0 4px 10px rgba(139, 92, 246, 0.3), inset 0 1px 1px rgba(255, 255, 255, 0.25);
|
|
33
|
+
--token-buttonSecondaryBackdrop: none;
|
|
34
|
+
--token-buttonSecondaryBg: rgba(139, 92, 246, 0.04);
|
|
35
|
+
--token-buttonSecondaryBgHover: rgba(139, 92, 246, 0.08);
|
|
36
|
+
--token-buttonSecondaryBorder: 1px solid rgba(139, 92, 246, 0.2);
|
|
37
|
+
--token-buttonSecondaryBorderHover: 1px solid rgba(139, 92, 246, 0.3);
|
|
38
|
+
--token-buttonSecondaryShadow:
|
|
39
|
+
0 1px 3px rgba(0, 0, 0, 0.04), inset 0 1px 0 rgba(255, 255, 255, 0.8);
|
|
40
|
+
--token-buttonSuccessBg:
|
|
41
|
+
linear-gradient(180deg, rgba(255, 255, 255, 0.2) 0%, transparent 50%),
|
|
42
|
+
var(--token-colorSuccess);
|
|
43
|
+
--token-buttonSuccessBgHover:
|
|
44
|
+
linear-gradient(180deg, rgba(255, 255, 255, 0.25) 0%, transparent 50%), #006654;
|
|
45
|
+
--token-buttonSuccessBorder: none;
|
|
46
|
+
--token-buttonSuccessShadow:
|
|
47
|
+
0 2px 6px rgba(0, 189, 155, 0.25), inset 0 1px 1px rgba(255, 255, 255, 0.2);
|
|
48
|
+
--token-colorBgContainer: #ffffff;
|
|
49
|
+
--token-colorBgElevated: #ffffff;
|
|
50
|
+
--token-colorBgLayout: #f5f5f5;
|
|
51
|
+
--token-colorBorder: #d9d9d9;
|
|
52
|
+
--token-colorBorderSecondary: #e5e7eb;
|
|
53
|
+
--token-colorError: #c82333;
|
|
54
|
+
--token-colorFillQuaternary: #fafafa;
|
|
55
|
+
--token-colorFillSecondary: #f3f4f6;
|
|
56
|
+
--token-colorFillTertiary: #f9fafb;
|
|
57
|
+
--token-colorInfo: #0066cc;
|
|
58
|
+
--token-colorLink: #8b5cf6;
|
|
59
|
+
--token-colorPrimary: #8b5cf6;
|
|
60
|
+
--token-colorPrimaryActive: #6d28d9;
|
|
61
|
+
--token-colorPrimaryBg: rgba(139, 92, 246, 0.1);
|
|
62
|
+
--token-colorPrimaryBorder: rgba(139, 92, 246, 0.2);
|
|
63
|
+
--token-colorSuccess: #007a63;
|
|
64
|
+
--token-colorSuccessActive: #005244;
|
|
65
|
+
--token-colorSuccessBg: rgba(0, 189, 155, 0.05);
|
|
66
|
+
--token-colorSuccessBorder: rgba(0, 189, 155, 0.4);
|
|
67
|
+
--token-colorSuccessBorderHover: rgba(0, 189, 155, 0.6);
|
|
68
|
+
--token-colorSuccessBoxShadow: 0 4px 12px rgba(0, 189, 155, 0.15);
|
|
69
|
+
--token-colorText: #141414;
|
|
70
|
+
--token-colorTextSecondary: #595959;
|
|
71
|
+
--token-colorTextTertiary: #737373;
|
|
72
|
+
--token-colorWarning: #9a5d00;
|
|
73
|
+
--token-focusRingColor: #8b5cf6;
|
|
74
|
+
--token-focusRingOffset: 2px;
|
|
75
|
+
--token-focusRingStyle: solid;
|
|
76
|
+
--token-focusRingWidth: 2px;
|
|
77
|
+
--token-tabActiveBg: rgba(139, 92, 246, 0.1);
|
|
78
|
+
--token-tabFocusShadow: 0 0 0 3px rgba(139, 92, 246, 0.15);
|
|
79
|
+
--token-tabHoverBg: var(--token-colorFillSecondary);
|
|
80
|
+
}
|
package/package.json
ADDED
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@lablup/ui-common",
|
|
3
|
+
"version": "0.1.0-alpha.0",
|
|
4
|
+
"description": "Shared, product-neutral UI components and design tokens for Lablup products",
|
|
5
|
+
"license": "Apache-2.0",
|
|
6
|
+
"author": "Lablup Inc.",
|
|
7
|
+
"type": "module",
|
|
8
|
+
"sideEffects": [
|
|
9
|
+
"**/*.css"
|
|
10
|
+
],
|
|
11
|
+
"repository": {
|
|
12
|
+
"type": "git",
|
|
13
|
+
"url": "git+https://github.com/lablup/ui-common.git"
|
|
14
|
+
},
|
|
15
|
+
"homepage": "https://github.com/lablup/ui-common#readme",
|
|
16
|
+
"bugs": {
|
|
17
|
+
"url": "https://github.com/lablup/ui-common/issues"
|
|
18
|
+
},
|
|
19
|
+
"publishConfig": {
|
|
20
|
+
"access": "public",
|
|
21
|
+
"provenance": false
|
|
22
|
+
},
|
|
23
|
+
"engines": {
|
|
24
|
+
"node": ">=20"
|
|
25
|
+
},
|
|
26
|
+
"packageManager": "pnpm@11.19.0",
|
|
27
|
+
"files": [
|
|
28
|
+
"dist",
|
|
29
|
+
"NOTICE"
|
|
30
|
+
],
|
|
31
|
+
"exports": {
|
|
32
|
+
".": {
|
|
33
|
+
"types": "./dist/index.d.ts",
|
|
34
|
+
"import": "./dist/index.js"
|
|
35
|
+
},
|
|
36
|
+
"./components/*": {
|
|
37
|
+
"types": "./dist/components/*/index.d.ts",
|
|
38
|
+
"import": "./dist/components/*/index.js"
|
|
39
|
+
},
|
|
40
|
+
"./hooks": {
|
|
41
|
+
"types": "./dist/hooks/index.d.ts",
|
|
42
|
+
"import": "./dist/hooks/index.js"
|
|
43
|
+
},
|
|
44
|
+
"./styles/base.css": "./dist/styles/base.css",
|
|
45
|
+
"./styles/themes/*.css": "./dist/styles/themes/*.css",
|
|
46
|
+
"./package.json": "./package.json"
|
|
47
|
+
},
|
|
48
|
+
"scripts": {
|
|
49
|
+
"build": "vite build",
|
|
50
|
+
"typecheck": "tsc --noEmit",
|
|
51
|
+
"lint": "eslint .",
|
|
52
|
+
"format": "prettier --write .",
|
|
53
|
+
"format:check": "prettier --check .",
|
|
54
|
+
"test": "vitest run",
|
|
55
|
+
"test:watch": "vitest",
|
|
56
|
+
"check:pack": "node scripts/check-pack.mjs",
|
|
57
|
+
"check:boundary": "node scripts/check-boundary.mjs",
|
|
58
|
+
"verify": "pnpm run typecheck && pnpm run lint && pnpm run format:check && pnpm run check:boundary && pnpm run test && pnpm run build && pnpm run check:pack"
|
|
59
|
+
},
|
|
60
|
+
"peerDependencies": {
|
|
61
|
+
"react": "^18.2.0 || ^19.0.0",
|
|
62
|
+
"react-dom": "^18.2.0 || ^19.0.0"
|
|
63
|
+
},
|
|
64
|
+
"devDependencies": {
|
|
65
|
+
"@eslint/js": "^9.39.0",
|
|
66
|
+
"@testing-library/jest-dom": "6.9.1",
|
|
67
|
+
"@testing-library/react": "^16.3.2",
|
|
68
|
+
"@testing-library/user-event": "^14.6.1",
|
|
69
|
+
"@types/node": "^22.0.0",
|
|
70
|
+
"@types/react": "^19.2.0",
|
|
71
|
+
"@types/react-dom": "^19.2.0",
|
|
72
|
+
"@vitejs/plugin-react": "^6.0.2",
|
|
73
|
+
"eslint": "^9.39.0",
|
|
74
|
+
"eslint-plugin-react-hooks": "6.0.0-rc.1",
|
|
75
|
+
"globals": "^16.5.0",
|
|
76
|
+
"jsdom": "^29.1.1",
|
|
77
|
+
"prettier": "^3.8.4",
|
|
78
|
+
"react": "^19.2.7",
|
|
79
|
+
"react-dom": "^19.2.7",
|
|
80
|
+
"tinyglobby": "^0.2.15",
|
|
81
|
+
"typescript": "^5.9.3",
|
|
82
|
+
"typescript-eslint": "^8.47.0",
|
|
83
|
+
"vite": "^8.0.16",
|
|
84
|
+
"vite-plugin-dts": "^4.5.4",
|
|
85
|
+
"vitest": "^4.1.8"
|
|
86
|
+
}
|
|
87
|
+
}
|