kaleido-ui 0.1.3 → 0.1.4
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/dist/css/kaleido-ui.css +105 -4
- package/dist/native/index.cjs +60 -13
- package/dist/native/index.d.cts +61 -14
- package/dist/native/index.d.ts +61 -14
- package/dist/native/index.js +60 -13
- package/dist/tokens/index.cjs +103 -4
- package/dist/tokens/index.d.cts +113 -4
- package/dist/tokens/index.d.ts +113 -4
- package/dist/tokens/index.js +99 -4
- package/dist/web/index.cjs +5023 -301
- package/dist/web/index.d.cts +932 -13
- package/dist/web/index.d.ts +932 -13
- package/dist/web/index.js +4949 -301
- package/package.json +12 -5
package/dist/tokens/index.cjs
CHANGED
|
@@ -24,7 +24,11 @@ __export(tokens_exports, {
|
|
|
24
24
|
colors: () => colors,
|
|
25
25
|
fontFamily: () => fontFamily,
|
|
26
26
|
fontWeight: () => fontWeight,
|
|
27
|
+
gradient: () => gradient,
|
|
28
|
+
iconBoxSize: () => iconBoxSize,
|
|
29
|
+
iconSize: () => iconSize,
|
|
27
30
|
keyframes: () => keyframes,
|
|
31
|
+
letterSpacing: () => letterSpacing,
|
|
28
32
|
lightSemanticColors: () => lightSemanticColors,
|
|
29
33
|
radius: () => radius,
|
|
30
34
|
shadow: () => shadow,
|
|
@@ -92,11 +96,37 @@ var colors = {
|
|
|
92
96
|
textSecondary: darkSemanticColors.mutedFg,
|
|
93
97
|
textMuted: darkSemanticColors.border,
|
|
94
98
|
textDimmed: darkSemanticColors.ring,
|
|
95
|
-
/** Semantic */
|
|
99
|
+
/** Semantic intent colors (use as text-success, bg-warning/15, etc.) */
|
|
96
100
|
success: darkSemanticColors.primary,
|
|
97
|
-
warning:
|
|
101
|
+
warning: "#FACC15",
|
|
102
|
+
danger: "#F94040",
|
|
103
|
+
info: "#4290FF",
|
|
104
|
+
/** @deprecated alias for `danger` — kept for back-compat. */
|
|
98
105
|
error: darkSemanticColors.destructive,
|
|
99
|
-
|
|
106
|
+
/** Surface elevation — translucent overlays applied over the page background */
|
|
107
|
+
surface: {
|
|
108
|
+
base: "rgba(255, 255, 255, 0.03)",
|
|
109
|
+
card: "rgba(255, 255, 255, 0.05)",
|
|
110
|
+
elevated: "rgba(255, 255, 255, 0.08)",
|
|
111
|
+
overlay: "rgba(0, 0, 0, 0.20)",
|
|
112
|
+
overlayStrong: "rgba(0, 0, 0, 0.35)",
|
|
113
|
+
scrim: "rgba(0, 0, 0, 0.60)"
|
|
114
|
+
},
|
|
115
|
+
/** Border ladder — translucent edges on dark surfaces */
|
|
116
|
+
borderToken: {
|
|
117
|
+
subtle: "rgba(255, 255, 255, 0.04)",
|
|
118
|
+
default: "rgba(255, 255, 255, 0.08)",
|
|
119
|
+
strong: "rgba(255, 255, 255, 0.15)"
|
|
120
|
+
},
|
|
121
|
+
/** Text ladder for dark surfaces */
|
|
122
|
+
text: {
|
|
123
|
+
primary: "#ffffff",
|
|
124
|
+
secondary: "rgba(255, 255, 255, 0.65)",
|
|
125
|
+
muted: "rgba(255, 255, 255, 0.45)",
|
|
126
|
+
dimmed: "rgba(255, 255, 255, 0.35)",
|
|
127
|
+
disabled: "rgba(255, 255, 255, 0.25)",
|
|
128
|
+
onAccent: "#051B10"
|
|
129
|
+
},
|
|
100
130
|
/** Network / Layer */
|
|
101
131
|
network: {
|
|
102
132
|
bitcoin: "#F7931A",
|
|
@@ -105,6 +135,19 @@ var colors = {
|
|
|
105
135
|
spark: "#FF6D00",
|
|
106
136
|
lightning: "#F6C343"
|
|
107
137
|
},
|
|
138
|
+
networkChip: {
|
|
139
|
+
bitcoin: "#A65D0D",
|
|
140
|
+
rgb: "#7F2623",
|
|
141
|
+
arkade: "#43208B",
|
|
142
|
+
spark: "#314238",
|
|
143
|
+
lightning: "#53611E"
|
|
144
|
+
},
|
|
145
|
+
/** Asset icon brand colors — used as solid backgrounds behind glyphs */
|
|
146
|
+
assetIcon: {
|
|
147
|
+
eth: "#627EEA",
|
|
148
|
+
usdt: "#26A17B",
|
|
149
|
+
usdc: "#2775CA"
|
|
150
|
+
},
|
|
108
151
|
/** Transaction direction */
|
|
109
152
|
tx: {
|
|
110
153
|
sent: "#F94040",
|
|
@@ -134,6 +177,33 @@ var fontWeight = {
|
|
|
134
177
|
semibold: "600",
|
|
135
178
|
bold: "700"
|
|
136
179
|
};
|
|
180
|
+
var letterSpacing = {
|
|
181
|
+
eyebrow: "0.18em",
|
|
182
|
+
eyebrowWide: "0.22em"
|
|
183
|
+
};
|
|
184
|
+
var iconSize = {
|
|
185
|
+
xxs: "11px",
|
|
186
|
+
// dense inline status / timestamp icons
|
|
187
|
+
xs: "13px",
|
|
188
|
+
sm: "14px",
|
|
189
|
+
md: "16px",
|
|
190
|
+
// default
|
|
191
|
+
lg: "18px",
|
|
192
|
+
xl: "20px",
|
|
193
|
+
"2xl": "24px",
|
|
194
|
+
"3xl": "28px",
|
|
195
|
+
"4xl": "32px",
|
|
196
|
+
"5xl": "40px",
|
|
197
|
+
"6xl": "64px"
|
|
198
|
+
// hero / success / error glyphs
|
|
199
|
+
};
|
|
200
|
+
var iconBoxSize = {
|
|
201
|
+
sm: "14px",
|
|
202
|
+
md: "16px",
|
|
203
|
+
lg: "18px",
|
|
204
|
+
nav: "22px",
|
|
205
|
+
control: "34px"
|
|
206
|
+
};
|
|
137
207
|
|
|
138
208
|
// src/tokens/radius.ts
|
|
139
209
|
var radius = {
|
|
@@ -159,7 +229,32 @@ var shadow = {
|
|
|
159
229
|
glow: "0 0 20px rgba(10, 10, 10, 0.15)",
|
|
160
230
|
glowStrong: "0 0 30px rgba(10, 10, 10, 0.25)",
|
|
161
231
|
glowSubtle: "0 0 15px rgba(10, 10, 10, 0.12)",
|
|
162
|
-
glowAccent: "0 4px 30px rgba(10, 10, 10, 0.18)"
|
|
232
|
+
glowAccent: "0 4px 30px rgba(10, 10, 10, 0.18)",
|
|
233
|
+
/** Brand green glow — drives all primary CTA / focus halos. */
|
|
234
|
+
glowPrimarySoft: "0 0 8px rgba(43, 238, 121, 0.5)",
|
|
235
|
+
glowPrimary: "0 0 30px rgba(43, 238, 121, 0.45)",
|
|
236
|
+
glowPrimaryStrong: "0 0 40px rgba(43, 238, 121, 0.5)",
|
|
237
|
+
/** Floating popover / modal elevation on dark surfaces. */
|
|
238
|
+
popover: "0 18px 55px rgba(0, 0, 0, 0.65)",
|
|
239
|
+
/** Toast / inline-notification elevation. */
|
|
240
|
+
toast: "0 0 30px rgba(0, 0, 0, 0.3)"
|
|
241
|
+
};
|
|
242
|
+
|
|
243
|
+
// src/tokens/gradients.ts
|
|
244
|
+
var gradient = {
|
|
245
|
+
/**
|
|
246
|
+
* Page-level radial wash — top-right white highlight + bottom-left
|
|
247
|
+
* brand purple bloom. Used by Welcome / LockScreen / Onboarding
|
|
248
|
+
* page shells.
|
|
249
|
+
*/
|
|
250
|
+
pageRadial: "radial-gradient(ellipse at 60% 10%, rgba(255, 255, 255, 0.06) 0%, transparent 55%), radial-gradient(ellipse at 30% 85%, rgba(124, 58, 237, 0.08) 0%, transparent 50%)",
|
|
251
|
+
/** Subtle highlight for the swap-input card receive panel. */
|
|
252
|
+
cardSheen: "linear-gradient(to bottom right, rgba(255, 255, 255, 0.01), rgba(43, 238, 121, 0.04))",
|
|
253
|
+
/**
|
|
254
|
+
* Brand headline gradient — white-to-fade. Used by `<HeadlineGradient />`
|
|
255
|
+
* via the `bg-gradient-headline` utility plus `bg-clip-text text-transparent`.
|
|
256
|
+
*/
|
|
257
|
+
headline: "linear-gradient(to right, #ffffff, #ffffff, rgba(255, 255, 255, 0.45))"
|
|
163
258
|
};
|
|
164
259
|
|
|
165
260
|
// src/tokens/transitions.ts
|
|
@@ -220,7 +315,11 @@ var animation = {
|
|
|
220
315
|
colors,
|
|
221
316
|
fontFamily,
|
|
222
317
|
fontWeight,
|
|
318
|
+
gradient,
|
|
319
|
+
iconBoxSize,
|
|
320
|
+
iconSize,
|
|
223
321
|
keyframes,
|
|
322
|
+
letterSpacing,
|
|
224
323
|
lightSemanticColors,
|
|
225
324
|
radius,
|
|
226
325
|
shadow,
|
package/dist/tokens/index.d.cts
CHANGED
|
@@ -33,11 +33,37 @@ declare const colors: {
|
|
|
33
33
|
readonly textSecondary: "rgba(255, 255, 255, 0.55)";
|
|
34
34
|
readonly textMuted: "hsl(150 20% 24%)";
|
|
35
35
|
readonly textDimmed: "#2BEE79";
|
|
36
|
-
/** Semantic */
|
|
36
|
+
/** Semantic intent colors (use as text-success, bg-warning/15, etc.) */
|
|
37
37
|
readonly success: "#2BEE79";
|
|
38
|
-
readonly warning: "#
|
|
38
|
+
readonly warning: "#FACC15";
|
|
39
|
+
readonly danger: "#F94040";
|
|
40
|
+
readonly info: "#4290FF";
|
|
41
|
+
/** @deprecated alias for `danger` — kept for back-compat. */
|
|
39
42
|
readonly error: "hsl(0 62% 50%)";
|
|
40
|
-
|
|
43
|
+
/** Surface elevation — translucent overlays applied over the page background */
|
|
44
|
+
readonly surface: {
|
|
45
|
+
readonly base: "rgba(255, 255, 255, 0.03)";
|
|
46
|
+
readonly card: "rgba(255, 255, 255, 0.05)";
|
|
47
|
+
readonly elevated: "rgba(255, 255, 255, 0.08)";
|
|
48
|
+
readonly overlay: "rgba(0, 0, 0, 0.20)";
|
|
49
|
+
readonly overlayStrong: "rgba(0, 0, 0, 0.35)";
|
|
50
|
+
readonly scrim: "rgba(0, 0, 0, 0.60)";
|
|
51
|
+
};
|
|
52
|
+
/** Border ladder — translucent edges on dark surfaces */
|
|
53
|
+
readonly borderToken: {
|
|
54
|
+
readonly subtle: "rgba(255, 255, 255, 0.04)";
|
|
55
|
+
readonly default: "rgba(255, 255, 255, 0.08)";
|
|
56
|
+
readonly strong: "rgba(255, 255, 255, 0.15)";
|
|
57
|
+
};
|
|
58
|
+
/** Text ladder for dark surfaces */
|
|
59
|
+
readonly text: {
|
|
60
|
+
readonly primary: "#ffffff";
|
|
61
|
+
readonly secondary: "rgba(255, 255, 255, 0.65)";
|
|
62
|
+
readonly muted: "rgba(255, 255, 255, 0.45)";
|
|
63
|
+
readonly dimmed: "rgba(255, 255, 255, 0.35)";
|
|
64
|
+
readonly disabled: "rgba(255, 255, 255, 0.25)";
|
|
65
|
+
readonly onAccent: "#051B10";
|
|
66
|
+
};
|
|
41
67
|
/** Network / Layer */
|
|
42
68
|
readonly network: {
|
|
43
69
|
readonly bitcoin: "#F7931A";
|
|
@@ -46,6 +72,19 @@ declare const colors: {
|
|
|
46
72
|
readonly spark: "#FF6D00";
|
|
47
73
|
readonly lightning: "#F6C343";
|
|
48
74
|
};
|
|
75
|
+
readonly networkChip: {
|
|
76
|
+
readonly bitcoin: "#A65D0D";
|
|
77
|
+
readonly rgb: "#7F2623";
|
|
78
|
+
readonly arkade: "#43208B";
|
|
79
|
+
readonly spark: "#314238";
|
|
80
|
+
readonly lightning: "#53611E";
|
|
81
|
+
};
|
|
82
|
+
/** Asset icon brand colors — used as solid backgrounds behind glyphs */
|
|
83
|
+
readonly assetIcon: {
|
|
84
|
+
readonly eth: "#627EEA";
|
|
85
|
+
readonly usdt: "#26A17B";
|
|
86
|
+
readonly usdc: "#2775CA";
|
|
87
|
+
};
|
|
49
88
|
/** Transaction direction */
|
|
50
89
|
readonly tx: {
|
|
51
90
|
readonly sent: "#F94040";
|
|
@@ -105,6 +144,45 @@ declare const fontWeight: {
|
|
|
105
144
|
readonly semibold: "600";
|
|
106
145
|
readonly bold: "700";
|
|
107
146
|
};
|
|
147
|
+
/**
|
|
148
|
+
* Letter-spacing tokens — reused across uppercase eyebrow labels.
|
|
149
|
+
* These replace the scattered `tracking-[0.18em]` / `tracking-[0.22em]` arbitraries.
|
|
150
|
+
*/
|
|
151
|
+
declare const letterSpacing: {
|
|
152
|
+
readonly eyebrow: "0.18em";
|
|
153
|
+
readonly eyebrowWide: "0.22em";
|
|
154
|
+
};
|
|
155
|
+
/**
|
|
156
|
+
* Icon size scale — drives `text-icon-*` utilities for Material Symbols glyphs
|
|
157
|
+
* and other font-driven icon sets. Exists as its own scale (separate from the
|
|
158
|
+
* body type scale) because icon sizes change in tighter steps.
|
|
159
|
+
*
|
|
160
|
+
* Usage: <span class="material-symbols-outlined text-icon-md">name</span>
|
|
161
|
+
*/
|
|
162
|
+
declare const iconSize: {
|
|
163
|
+
readonly xxs: "11px";
|
|
164
|
+
readonly xs: "13px";
|
|
165
|
+
readonly sm: "14px";
|
|
166
|
+
readonly md: "16px";
|
|
167
|
+
readonly lg: "18px";
|
|
168
|
+
readonly xl: "20px";
|
|
169
|
+
readonly '2xl': "24px";
|
|
170
|
+
readonly '3xl': "28px";
|
|
171
|
+
readonly '4xl': "32px";
|
|
172
|
+
readonly '5xl': "40px";
|
|
173
|
+
readonly '6xl': "64px";
|
|
174
|
+
};
|
|
175
|
+
/**
|
|
176
|
+
* Square icon box scale — drives `size-icon-*` utilities for SVG icons
|
|
177
|
+
* and compact icon buttons.
|
|
178
|
+
*/
|
|
179
|
+
declare const iconBoxSize: {
|
|
180
|
+
readonly sm: "14px";
|
|
181
|
+
readonly md: "16px";
|
|
182
|
+
readonly lg: "18px";
|
|
183
|
+
readonly nav: "22px";
|
|
184
|
+
readonly control: "34px";
|
|
185
|
+
};
|
|
108
186
|
|
|
109
187
|
/**
|
|
110
188
|
* KaleidoSwap Border Radius Tokens
|
|
@@ -134,6 +212,37 @@ declare const shadow: {
|
|
|
134
212
|
readonly glowStrong: "0 0 30px rgba(10, 10, 10, 0.25)";
|
|
135
213
|
readonly glowSubtle: "0 0 15px rgba(10, 10, 10, 0.12)";
|
|
136
214
|
readonly glowAccent: "0 4px 30px rgba(10, 10, 10, 0.18)";
|
|
215
|
+
/** Brand green glow — drives all primary CTA / focus halos. */
|
|
216
|
+
readonly glowPrimarySoft: "0 0 8px rgba(43, 238, 121, 0.5)";
|
|
217
|
+
readonly glowPrimary: "0 0 30px rgba(43, 238, 121, 0.45)";
|
|
218
|
+
readonly glowPrimaryStrong: "0 0 40px rgba(43, 238, 121, 0.5)";
|
|
219
|
+
/** Floating popover / modal elevation on dark surfaces. */
|
|
220
|
+
readonly popover: "0 18px 55px rgba(0, 0, 0, 0.65)";
|
|
221
|
+
/** Toast / inline-notification elevation. */
|
|
222
|
+
readonly toast: "0 0 30px rgba(0, 0, 0, 0.3)";
|
|
223
|
+
};
|
|
224
|
+
|
|
225
|
+
/**
|
|
226
|
+
* KaleidoSwap Gradient Tokens
|
|
227
|
+
*
|
|
228
|
+
* Reusable visual gradients. Card-accent / dynamic gradients live with
|
|
229
|
+
* the components that build them — these tokens cover the global,
|
|
230
|
+
* static gradients used by page shells.
|
|
231
|
+
*/
|
|
232
|
+
declare const gradient: {
|
|
233
|
+
/**
|
|
234
|
+
* Page-level radial wash — top-right white highlight + bottom-left
|
|
235
|
+
* brand purple bloom. Used by Welcome / LockScreen / Onboarding
|
|
236
|
+
* page shells.
|
|
237
|
+
*/
|
|
238
|
+
readonly pageRadial: "radial-gradient(ellipse at 60% 10%, rgba(255, 255, 255, 0.06) 0%, transparent 55%), radial-gradient(ellipse at 30% 85%, rgba(124, 58, 237, 0.08) 0%, transparent 50%)";
|
|
239
|
+
/** Subtle highlight for the swap-input card receive panel. */
|
|
240
|
+
readonly cardSheen: "linear-gradient(to bottom right, rgba(255, 255, 255, 0.01), rgba(43, 238, 121, 0.04))";
|
|
241
|
+
/**
|
|
242
|
+
* Brand headline gradient — white-to-fade. Used by `<HeadlineGradient />`
|
|
243
|
+
* via the `bg-gradient-headline` utility plus `bg-clip-text text-transparent`.
|
|
244
|
+
*/
|
|
245
|
+
readonly headline: "linear-gradient(to right, #ffffff, #ffffff, rgba(255, 255, 255, 0.45))";
|
|
137
246
|
};
|
|
138
247
|
|
|
139
248
|
/**
|
|
@@ -231,4 +340,4 @@ declare const animation: {
|
|
|
231
340
|
readonly 'bounce-slight': "bounce-slight 2s infinite";
|
|
232
341
|
};
|
|
233
342
|
|
|
234
|
-
export { animation, colors, fontFamily, fontWeight, keyframes, lightSemanticColors, radius, shadow, transition, typeScale };
|
|
343
|
+
export { animation, colors, fontFamily, fontWeight, gradient, iconBoxSize, iconSize, keyframes, letterSpacing, lightSemanticColors, radius, shadow, transition, typeScale };
|
package/dist/tokens/index.d.ts
CHANGED
|
@@ -33,11 +33,37 @@ declare const colors: {
|
|
|
33
33
|
readonly textSecondary: "rgba(255, 255, 255, 0.55)";
|
|
34
34
|
readonly textMuted: "hsl(150 20% 24%)";
|
|
35
35
|
readonly textDimmed: "#2BEE79";
|
|
36
|
-
/** Semantic */
|
|
36
|
+
/** Semantic intent colors (use as text-success, bg-warning/15, etc.) */
|
|
37
37
|
readonly success: "#2BEE79";
|
|
38
|
-
readonly warning: "#
|
|
38
|
+
readonly warning: "#FACC15";
|
|
39
|
+
readonly danger: "#F94040";
|
|
40
|
+
readonly info: "#4290FF";
|
|
41
|
+
/** @deprecated alias for `danger` — kept for back-compat. */
|
|
39
42
|
readonly error: "hsl(0 62% 50%)";
|
|
40
|
-
|
|
43
|
+
/** Surface elevation — translucent overlays applied over the page background */
|
|
44
|
+
readonly surface: {
|
|
45
|
+
readonly base: "rgba(255, 255, 255, 0.03)";
|
|
46
|
+
readonly card: "rgba(255, 255, 255, 0.05)";
|
|
47
|
+
readonly elevated: "rgba(255, 255, 255, 0.08)";
|
|
48
|
+
readonly overlay: "rgba(0, 0, 0, 0.20)";
|
|
49
|
+
readonly overlayStrong: "rgba(0, 0, 0, 0.35)";
|
|
50
|
+
readonly scrim: "rgba(0, 0, 0, 0.60)";
|
|
51
|
+
};
|
|
52
|
+
/** Border ladder — translucent edges on dark surfaces */
|
|
53
|
+
readonly borderToken: {
|
|
54
|
+
readonly subtle: "rgba(255, 255, 255, 0.04)";
|
|
55
|
+
readonly default: "rgba(255, 255, 255, 0.08)";
|
|
56
|
+
readonly strong: "rgba(255, 255, 255, 0.15)";
|
|
57
|
+
};
|
|
58
|
+
/** Text ladder for dark surfaces */
|
|
59
|
+
readonly text: {
|
|
60
|
+
readonly primary: "#ffffff";
|
|
61
|
+
readonly secondary: "rgba(255, 255, 255, 0.65)";
|
|
62
|
+
readonly muted: "rgba(255, 255, 255, 0.45)";
|
|
63
|
+
readonly dimmed: "rgba(255, 255, 255, 0.35)";
|
|
64
|
+
readonly disabled: "rgba(255, 255, 255, 0.25)";
|
|
65
|
+
readonly onAccent: "#051B10";
|
|
66
|
+
};
|
|
41
67
|
/** Network / Layer */
|
|
42
68
|
readonly network: {
|
|
43
69
|
readonly bitcoin: "#F7931A";
|
|
@@ -46,6 +72,19 @@ declare const colors: {
|
|
|
46
72
|
readonly spark: "#FF6D00";
|
|
47
73
|
readonly lightning: "#F6C343";
|
|
48
74
|
};
|
|
75
|
+
readonly networkChip: {
|
|
76
|
+
readonly bitcoin: "#A65D0D";
|
|
77
|
+
readonly rgb: "#7F2623";
|
|
78
|
+
readonly arkade: "#43208B";
|
|
79
|
+
readonly spark: "#314238";
|
|
80
|
+
readonly lightning: "#53611E";
|
|
81
|
+
};
|
|
82
|
+
/** Asset icon brand colors — used as solid backgrounds behind glyphs */
|
|
83
|
+
readonly assetIcon: {
|
|
84
|
+
readonly eth: "#627EEA";
|
|
85
|
+
readonly usdt: "#26A17B";
|
|
86
|
+
readonly usdc: "#2775CA";
|
|
87
|
+
};
|
|
49
88
|
/** Transaction direction */
|
|
50
89
|
readonly tx: {
|
|
51
90
|
readonly sent: "#F94040";
|
|
@@ -105,6 +144,45 @@ declare const fontWeight: {
|
|
|
105
144
|
readonly semibold: "600";
|
|
106
145
|
readonly bold: "700";
|
|
107
146
|
};
|
|
147
|
+
/**
|
|
148
|
+
* Letter-spacing tokens — reused across uppercase eyebrow labels.
|
|
149
|
+
* These replace the scattered `tracking-[0.18em]` / `tracking-[0.22em]` arbitraries.
|
|
150
|
+
*/
|
|
151
|
+
declare const letterSpacing: {
|
|
152
|
+
readonly eyebrow: "0.18em";
|
|
153
|
+
readonly eyebrowWide: "0.22em";
|
|
154
|
+
};
|
|
155
|
+
/**
|
|
156
|
+
* Icon size scale — drives `text-icon-*` utilities for Material Symbols glyphs
|
|
157
|
+
* and other font-driven icon sets. Exists as its own scale (separate from the
|
|
158
|
+
* body type scale) because icon sizes change in tighter steps.
|
|
159
|
+
*
|
|
160
|
+
* Usage: <span class="material-symbols-outlined text-icon-md">name</span>
|
|
161
|
+
*/
|
|
162
|
+
declare const iconSize: {
|
|
163
|
+
readonly xxs: "11px";
|
|
164
|
+
readonly xs: "13px";
|
|
165
|
+
readonly sm: "14px";
|
|
166
|
+
readonly md: "16px";
|
|
167
|
+
readonly lg: "18px";
|
|
168
|
+
readonly xl: "20px";
|
|
169
|
+
readonly '2xl': "24px";
|
|
170
|
+
readonly '3xl': "28px";
|
|
171
|
+
readonly '4xl': "32px";
|
|
172
|
+
readonly '5xl': "40px";
|
|
173
|
+
readonly '6xl': "64px";
|
|
174
|
+
};
|
|
175
|
+
/**
|
|
176
|
+
* Square icon box scale — drives `size-icon-*` utilities for SVG icons
|
|
177
|
+
* and compact icon buttons.
|
|
178
|
+
*/
|
|
179
|
+
declare const iconBoxSize: {
|
|
180
|
+
readonly sm: "14px";
|
|
181
|
+
readonly md: "16px";
|
|
182
|
+
readonly lg: "18px";
|
|
183
|
+
readonly nav: "22px";
|
|
184
|
+
readonly control: "34px";
|
|
185
|
+
};
|
|
108
186
|
|
|
109
187
|
/**
|
|
110
188
|
* KaleidoSwap Border Radius Tokens
|
|
@@ -134,6 +212,37 @@ declare const shadow: {
|
|
|
134
212
|
readonly glowStrong: "0 0 30px rgba(10, 10, 10, 0.25)";
|
|
135
213
|
readonly glowSubtle: "0 0 15px rgba(10, 10, 10, 0.12)";
|
|
136
214
|
readonly glowAccent: "0 4px 30px rgba(10, 10, 10, 0.18)";
|
|
215
|
+
/** Brand green glow — drives all primary CTA / focus halos. */
|
|
216
|
+
readonly glowPrimarySoft: "0 0 8px rgba(43, 238, 121, 0.5)";
|
|
217
|
+
readonly glowPrimary: "0 0 30px rgba(43, 238, 121, 0.45)";
|
|
218
|
+
readonly glowPrimaryStrong: "0 0 40px rgba(43, 238, 121, 0.5)";
|
|
219
|
+
/** Floating popover / modal elevation on dark surfaces. */
|
|
220
|
+
readonly popover: "0 18px 55px rgba(0, 0, 0, 0.65)";
|
|
221
|
+
/** Toast / inline-notification elevation. */
|
|
222
|
+
readonly toast: "0 0 30px rgba(0, 0, 0, 0.3)";
|
|
223
|
+
};
|
|
224
|
+
|
|
225
|
+
/**
|
|
226
|
+
* KaleidoSwap Gradient Tokens
|
|
227
|
+
*
|
|
228
|
+
* Reusable visual gradients. Card-accent / dynamic gradients live with
|
|
229
|
+
* the components that build them — these tokens cover the global,
|
|
230
|
+
* static gradients used by page shells.
|
|
231
|
+
*/
|
|
232
|
+
declare const gradient: {
|
|
233
|
+
/**
|
|
234
|
+
* Page-level radial wash — top-right white highlight + bottom-left
|
|
235
|
+
* brand purple bloom. Used by Welcome / LockScreen / Onboarding
|
|
236
|
+
* page shells.
|
|
237
|
+
*/
|
|
238
|
+
readonly pageRadial: "radial-gradient(ellipse at 60% 10%, rgba(255, 255, 255, 0.06) 0%, transparent 55%), radial-gradient(ellipse at 30% 85%, rgba(124, 58, 237, 0.08) 0%, transparent 50%)";
|
|
239
|
+
/** Subtle highlight for the swap-input card receive panel. */
|
|
240
|
+
readonly cardSheen: "linear-gradient(to bottom right, rgba(255, 255, 255, 0.01), rgba(43, 238, 121, 0.04))";
|
|
241
|
+
/**
|
|
242
|
+
* Brand headline gradient — white-to-fade. Used by `<HeadlineGradient />`
|
|
243
|
+
* via the `bg-gradient-headline` utility plus `bg-clip-text text-transparent`.
|
|
244
|
+
*/
|
|
245
|
+
readonly headline: "linear-gradient(to right, #ffffff, #ffffff, rgba(255, 255, 255, 0.45))";
|
|
137
246
|
};
|
|
138
247
|
|
|
139
248
|
/**
|
|
@@ -231,4 +340,4 @@ declare const animation: {
|
|
|
231
340
|
readonly 'bounce-slight': "bounce-slight 2s infinite";
|
|
232
341
|
};
|
|
233
342
|
|
|
234
|
-
export { animation, colors, fontFamily, fontWeight, keyframes, lightSemanticColors, radius, shadow, transition, typeScale };
|
|
343
|
+
export { animation, colors, fontFamily, fontWeight, gradient, iconBoxSize, iconSize, keyframes, letterSpacing, lightSemanticColors, radius, shadow, transition, typeScale };
|
package/dist/tokens/index.js
CHANGED
|
@@ -57,11 +57,37 @@ var colors = {
|
|
|
57
57
|
textSecondary: darkSemanticColors.mutedFg,
|
|
58
58
|
textMuted: darkSemanticColors.border,
|
|
59
59
|
textDimmed: darkSemanticColors.ring,
|
|
60
|
-
/** Semantic */
|
|
60
|
+
/** Semantic intent colors (use as text-success, bg-warning/15, etc.) */
|
|
61
61
|
success: darkSemanticColors.primary,
|
|
62
|
-
warning:
|
|
62
|
+
warning: "#FACC15",
|
|
63
|
+
danger: "#F94040",
|
|
64
|
+
info: "#4290FF",
|
|
65
|
+
/** @deprecated alias for `danger` — kept for back-compat. */
|
|
63
66
|
error: darkSemanticColors.destructive,
|
|
64
|
-
|
|
67
|
+
/** Surface elevation — translucent overlays applied over the page background */
|
|
68
|
+
surface: {
|
|
69
|
+
base: "rgba(255, 255, 255, 0.03)",
|
|
70
|
+
card: "rgba(255, 255, 255, 0.05)",
|
|
71
|
+
elevated: "rgba(255, 255, 255, 0.08)",
|
|
72
|
+
overlay: "rgba(0, 0, 0, 0.20)",
|
|
73
|
+
overlayStrong: "rgba(0, 0, 0, 0.35)",
|
|
74
|
+
scrim: "rgba(0, 0, 0, 0.60)"
|
|
75
|
+
},
|
|
76
|
+
/** Border ladder — translucent edges on dark surfaces */
|
|
77
|
+
borderToken: {
|
|
78
|
+
subtle: "rgba(255, 255, 255, 0.04)",
|
|
79
|
+
default: "rgba(255, 255, 255, 0.08)",
|
|
80
|
+
strong: "rgba(255, 255, 255, 0.15)"
|
|
81
|
+
},
|
|
82
|
+
/** Text ladder for dark surfaces */
|
|
83
|
+
text: {
|
|
84
|
+
primary: "#ffffff",
|
|
85
|
+
secondary: "rgba(255, 255, 255, 0.65)",
|
|
86
|
+
muted: "rgba(255, 255, 255, 0.45)",
|
|
87
|
+
dimmed: "rgba(255, 255, 255, 0.35)",
|
|
88
|
+
disabled: "rgba(255, 255, 255, 0.25)",
|
|
89
|
+
onAccent: "#051B10"
|
|
90
|
+
},
|
|
65
91
|
/** Network / Layer */
|
|
66
92
|
network: {
|
|
67
93
|
bitcoin: "#F7931A",
|
|
@@ -70,6 +96,19 @@ var colors = {
|
|
|
70
96
|
spark: "#FF6D00",
|
|
71
97
|
lightning: "#F6C343"
|
|
72
98
|
},
|
|
99
|
+
networkChip: {
|
|
100
|
+
bitcoin: "#A65D0D",
|
|
101
|
+
rgb: "#7F2623",
|
|
102
|
+
arkade: "#43208B",
|
|
103
|
+
spark: "#314238",
|
|
104
|
+
lightning: "#53611E"
|
|
105
|
+
},
|
|
106
|
+
/** Asset icon brand colors — used as solid backgrounds behind glyphs */
|
|
107
|
+
assetIcon: {
|
|
108
|
+
eth: "#627EEA",
|
|
109
|
+
usdt: "#26A17B",
|
|
110
|
+
usdc: "#2775CA"
|
|
111
|
+
},
|
|
73
112
|
/** Transaction direction */
|
|
74
113
|
tx: {
|
|
75
114
|
sent: "#F94040",
|
|
@@ -99,6 +138,33 @@ var fontWeight = {
|
|
|
99
138
|
semibold: "600",
|
|
100
139
|
bold: "700"
|
|
101
140
|
};
|
|
141
|
+
var letterSpacing = {
|
|
142
|
+
eyebrow: "0.18em",
|
|
143
|
+
eyebrowWide: "0.22em"
|
|
144
|
+
};
|
|
145
|
+
var iconSize = {
|
|
146
|
+
xxs: "11px",
|
|
147
|
+
// dense inline status / timestamp icons
|
|
148
|
+
xs: "13px",
|
|
149
|
+
sm: "14px",
|
|
150
|
+
md: "16px",
|
|
151
|
+
// default
|
|
152
|
+
lg: "18px",
|
|
153
|
+
xl: "20px",
|
|
154
|
+
"2xl": "24px",
|
|
155
|
+
"3xl": "28px",
|
|
156
|
+
"4xl": "32px",
|
|
157
|
+
"5xl": "40px",
|
|
158
|
+
"6xl": "64px"
|
|
159
|
+
// hero / success / error glyphs
|
|
160
|
+
};
|
|
161
|
+
var iconBoxSize = {
|
|
162
|
+
sm: "14px",
|
|
163
|
+
md: "16px",
|
|
164
|
+
lg: "18px",
|
|
165
|
+
nav: "22px",
|
|
166
|
+
control: "34px"
|
|
167
|
+
};
|
|
102
168
|
|
|
103
169
|
// src/tokens/radius.ts
|
|
104
170
|
var radius = {
|
|
@@ -124,7 +190,32 @@ var shadow = {
|
|
|
124
190
|
glow: "0 0 20px rgba(10, 10, 10, 0.15)",
|
|
125
191
|
glowStrong: "0 0 30px rgba(10, 10, 10, 0.25)",
|
|
126
192
|
glowSubtle: "0 0 15px rgba(10, 10, 10, 0.12)",
|
|
127
|
-
glowAccent: "0 4px 30px rgba(10, 10, 10, 0.18)"
|
|
193
|
+
glowAccent: "0 4px 30px rgba(10, 10, 10, 0.18)",
|
|
194
|
+
/** Brand green glow — drives all primary CTA / focus halos. */
|
|
195
|
+
glowPrimarySoft: "0 0 8px rgba(43, 238, 121, 0.5)",
|
|
196
|
+
glowPrimary: "0 0 30px rgba(43, 238, 121, 0.45)",
|
|
197
|
+
glowPrimaryStrong: "0 0 40px rgba(43, 238, 121, 0.5)",
|
|
198
|
+
/** Floating popover / modal elevation on dark surfaces. */
|
|
199
|
+
popover: "0 18px 55px rgba(0, 0, 0, 0.65)",
|
|
200
|
+
/** Toast / inline-notification elevation. */
|
|
201
|
+
toast: "0 0 30px rgba(0, 0, 0, 0.3)"
|
|
202
|
+
};
|
|
203
|
+
|
|
204
|
+
// src/tokens/gradients.ts
|
|
205
|
+
var gradient = {
|
|
206
|
+
/**
|
|
207
|
+
* Page-level radial wash — top-right white highlight + bottom-left
|
|
208
|
+
* brand purple bloom. Used by Welcome / LockScreen / Onboarding
|
|
209
|
+
* page shells.
|
|
210
|
+
*/
|
|
211
|
+
pageRadial: "radial-gradient(ellipse at 60% 10%, rgba(255, 255, 255, 0.06) 0%, transparent 55%), radial-gradient(ellipse at 30% 85%, rgba(124, 58, 237, 0.08) 0%, transparent 50%)",
|
|
212
|
+
/** Subtle highlight for the swap-input card receive panel. */
|
|
213
|
+
cardSheen: "linear-gradient(to bottom right, rgba(255, 255, 255, 0.01), rgba(43, 238, 121, 0.04))",
|
|
214
|
+
/**
|
|
215
|
+
* Brand headline gradient — white-to-fade. Used by `<HeadlineGradient />`
|
|
216
|
+
* via the `bg-gradient-headline` utility plus `bg-clip-text text-transparent`.
|
|
217
|
+
*/
|
|
218
|
+
headline: "linear-gradient(to right, #ffffff, #ffffff, rgba(255, 255, 255, 0.45))"
|
|
128
219
|
};
|
|
129
220
|
|
|
130
221
|
// src/tokens/transitions.ts
|
|
@@ -184,7 +275,11 @@ export {
|
|
|
184
275
|
colors,
|
|
185
276
|
fontFamily,
|
|
186
277
|
fontWeight,
|
|
278
|
+
gradient,
|
|
279
|
+
iconBoxSize,
|
|
280
|
+
iconSize,
|
|
187
281
|
keyframes,
|
|
282
|
+
letterSpacing,
|
|
188
283
|
lightSemanticColors,
|
|
189
284
|
radius,
|
|
190
285
|
shadow,
|