@liberfi.io/ui 0.1.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.
@@ -0,0 +1,331 @@
1
+ @import "tailwindcss";
2
+
3
+ @plugin './plugin';
4
+
5
+ @custom-variant dark (&:is(.dark *));
6
+
7
+ @theme {
8
+ /* fonts */
9
+ --text-xxs: 0.625rem;
10
+ --text-xxs--line-height: 0.75rem;
11
+ --text-xs: var(--heroui-font-size-tiny);
12
+ --text-xs--line-height: var(--heroui-line-height-tiny);
13
+ --text-sm: var(--heroui-font-size-small);
14
+ --text-sm--line-height: var(--heroui-line-height-small);
15
+ --text-base: var(--heroui-font-size-medium);
16
+ --text-base--line-height: var(--heroui-line-height-medium);
17
+ --text-lg: var(--heroui-font-size-large);
18
+ --text-lg--line-height: var(--heroui-line-height-large);
19
+
20
+ /* semantic colors */
21
+ --color-bullish: #c7ff2e;
22
+ --color-bearish: #f76816;
23
+ --color-neutral: hsl(var(--heroui-default-600));
24
+ --color-placeholder: hsl(var(--heroui-default-500));
25
+
26
+ /* reuse uikit colors */
27
+ --color-default-50: hsl(var(--heroui-default-50));
28
+ --color-default-100: hsl(var(--heroui-default-100));
29
+ --color-default-200: hsl(var(--heroui-default-200));
30
+ --color-default-300: hsl(var(--heroui-default-300));
31
+ --color-default-400: hsl(var(--heroui-default-400));
32
+ --color-default-500: hsl(var(--heroui-default-500));
33
+ --color-default-600: hsl(var(--heroui-default-600));
34
+ --color-default-700: hsl(var(--heroui-default-700));
35
+ --color-default-800: hsl(var(--heroui-default-800));
36
+ --color-default-900: hsl(var(--heroui-default-900));
37
+ --color-default-foreground: hsl(var(--heroui-default-foreground));
38
+ --color-default: hsl(var(--heroui-default));
39
+ --color-primary-50: hsl(var(--heroui-primary-50));
40
+ --color-primary-100: hsl(var(--heroui-primary-100));
41
+ --color-primary-200: hsl(var(--heroui-primary-200));
42
+ --color-primary-300: hsl(var(--heroui-primary-300));
43
+ --color-primary-400: hsl(var(--heroui-primary-400));
44
+ --color-primary-500: hsl(var(--heroui-primary-500));
45
+ --color-primary-600: hsl(var(--heroui-primary-600));
46
+ --color-primary-700: hsl(var(--heroui-primary-700));
47
+ --color-primary-800: hsl(var(--heroui-primary-800));
48
+ --color-primary-900: hsl(var(--heroui-primary-900));
49
+ --color-primary-foreground: hsl(var(--heroui-primary-foreground));
50
+ --color-primary: hsl(var(--heroui-primary));
51
+ --color-secondary-50: hsl(var(--heroui-secondary-50));
52
+ --color-secondary-100: hsl(var(--heroui-secondary-100));
53
+ --color-secondary-200: hsl(var(--heroui-secondary-200));
54
+ --color-secondary-300: hsl(var(--heroui-secondary-300));
55
+ --color-secondary-400: hsl(var(--heroui-secondary-400));
56
+ --color-secondary-500: hsl(var(--heroui-secondary-500));
57
+ --color-secondary-600: hsl(var(--heroui-secondary-600));
58
+ --color-secondary-700: hsl(var(--heroui-secondary-700));
59
+ --color-secondary-800: hsl(var(--heroui-secondary-800));
60
+ --color-secondary-900: hsl(var(--heroui-secondary-900));
61
+ --color-secondary-foreground: hsl(var(--heroui-secondary-foreground));
62
+ --color-secondary: hsl(var(--heroui-secondary));
63
+ --color-success-50: hsl(var(--heroui-success-50));
64
+ --color-success-100: hsl(var(--heroui-success-100));
65
+ --color-success-200: hsl(var(--heroui-success-200));
66
+ --color-success-300: hsl(var(--heroui-success-300));
67
+ --color-success-400: hsl(var(--heroui-success-400));
68
+ --color-success-500: hsl(var(--heroui-success-500));
69
+ --color-success-600: hsl(var(--heroui-success-600));
70
+ --color-success-700: hsl(var(--heroui-success-700));
71
+ --color-success-800: hsl(var(--heroui-success-800));
72
+ --color-success-900: hsl(var(--heroui-success-900));
73
+ --color-success-foreground: hsl(var(--heroui-success-foreground));
74
+ --color-success: hsl(var(--heroui-success));
75
+ --color-warning-50: hsl(var(--heroui-warning-50));
76
+ --color-warning-100: hsl(var(--heroui-warning-100));
77
+ --color-warning-200: hsl(var(--heroui-warning-200));
78
+ --color-warning-300: hsl(var(--heroui-warning-300));
79
+ --color-warning-400: hsl(var(--heroui-warning-400));
80
+ --color-warning-500: hsl(var(--heroui-warning-500));
81
+ --color-warning-600: hsl(var(--heroui-warning-600));
82
+ --color-warning-700: hsl(var(--heroui-warning-700));
83
+ --color-warning-800: hsl(var(--heroui-warning-800));
84
+ --color-warning-900: hsl(var(--heroui-warning-900));
85
+ --color-warning-foreground: hsl(var(--heroui-warning-foreground));
86
+ --color-warning: hsl(var(--heroui-warning));
87
+ --color-danger-50: hsl(var(--heroui-danger-50));
88
+ --color-danger-100: hsl(var(--heroui-danger-100));
89
+ --color-danger-200: hsl(var(--heroui-danger-200));
90
+ --color-danger-300: hsl(var(--heroui-danger-300));
91
+ --color-danger-400: hsl(var(--heroui-danger-400));
92
+ --color-danger-500: hsl(var(--heroui-danger-500));
93
+ --color-danger-600: hsl(var(--heroui-danger-600));
94
+ --color-danger-700: hsl(var(--heroui-danger-700));
95
+ --color-danger-800: hsl(var(--heroui-danger-800));
96
+ --color-danger-900: hsl(var(--heroui-danger-900));
97
+ --color-danger-foreground: hsl(var(--heroui-danger-foreground));
98
+ --color-danger: hsl(var(--heroui-danger));
99
+ --color-background: hsl(var(--heroui-background));
100
+ --color-foreground: hsl(var(--heroui-foreground));
101
+ --color-content1: hsl(var(--heroui-content1));
102
+ --color-content1-foreground: hsl(var(--heroui-content1-foreground));
103
+ --color-content2: hsl(var(--heroui-content2));
104
+ --color-content2-foreground: hsl(var(--heroui-content2-foreground));
105
+ --color-content3: hsl(var(--heroui-content3));
106
+ --color-content3-foreground: hsl(var(--heroui-content3-foreground));
107
+ --color-content4: hsl(var(--heroui-content4));
108
+ --color-content4-foreground: hsl(var(--heroui-content4-foreground));
109
+ --color-focus: hsl(var(--heroui-focus));
110
+ --color-overlay: hsl(var(--heroui-overlay));
111
+ --color-divider: hsl(var(--heroui-divider));
112
+ --color-border: hsl(var(--heroui-divider) / 0.4);
113
+
114
+ /* misc */
115
+ --opacity-disabled: var(--heroui-disabled-opacity);
116
+ --opacity-hover: var(--heroui-hover-opacity);
117
+ --radius-sm: var(--heroui-radius-small);
118
+ --radius-md: var(--heroui-radius-medium);
119
+ --radius-lg: var(--heroui-radius-large);
120
+ }
121
+
122
+ @layer base {
123
+ body {
124
+ padding-bottom: var(--safe-area-inset-bottom, 0);
125
+ @apply antialiased overscroll-none;
126
+ }
127
+
128
+ input[type="number"]::-webkit-inner-spin-button,
129
+ input[type="number"]::-webkit-outer-spin-button {
130
+ -webkit-appearance: none;
131
+ margin: 0;
132
+ }
133
+
134
+ @media (max-width: theme("screens.sm")) {
135
+ * {
136
+ scrollbar-width: none;
137
+ -ms-overflow-style: none;
138
+ &::-webkit-scrollbar {
139
+ display: none;
140
+ }
141
+ }
142
+ }
143
+
144
+ @media (min-width: theme("screens.sm")) {
145
+ * {
146
+ &::-webkit-scrollbar {
147
+ width: 6px;
148
+ height: 6px;
149
+ }
150
+ &::-webkit-scrollbar-track {
151
+ background: rgba(0, 0, 0, 0.1);
152
+ border-radius: 3px;
153
+ }
154
+ &::-webkit-scrollbar-thumb {
155
+ background: hsla(0, 0%, 100%, 0.2);
156
+ border-radius: 3px;
157
+ &:hover {
158
+ background: hsla(0, 0%, 100%, 0.3);
159
+ }
160
+ }
161
+ scrollbar-width: thin;
162
+ scrollbar-color: hsla(0, 0%, 100%, 0.2) rgba(0, 0, 0, 0.1);
163
+ }
164
+ }
165
+ }
166
+
167
+ @layer utilities {
168
+ :root {
169
+ --color-pump: 146, 60%, 58%;
170
+ --color-bonk: 28, 80%, 50%;
171
+ --color-bags: 96, 100%, 30%;
172
+ --color-moonshot: 300, 100%, 77%;
173
+ --color-heaven: 240, 2%, 90%;
174
+ --color-sugar: 341, 82%, 78%;
175
+ --color-believe: 135, 100%, 43%;
176
+ --color-jupstudio: 14, 99%, 74%;
177
+ --color-moonit: 65, 100%, 54%;
178
+ --color-boop: 213, 90%, 47%;
179
+ --color-launchlab: 189, 54%, 55%;
180
+ --color-virtual-curve: 349, 100%, 64%;
181
+ --color-raydium: 223, 95%, 59%;
182
+ --color-meteora: 9, 96%, 59%;
183
+ --color-pump-amm: 220, 8%, 64%;
184
+ --color-orca: 47, 99%, 68%;
185
+ }
186
+
187
+ .bg-pump {
188
+ background: hsl(var(--color-pump));
189
+ }
190
+ .bg-pump\/20 {
191
+ background: hsl(var(--color-pump), 0.2);
192
+ }
193
+ .text-pump {
194
+ color: hsl(var(--color-pump));
195
+ }
196
+ .bg-bonk {
197
+ background: hsl(var(--color-bonk));
198
+ }
199
+ .bg-bonk\/20 {
200
+ background: hsl(var(--color-bonk), 0.2);
201
+ }
202
+ .text-bonk {
203
+ color: hsl(var(--color-bonk));
204
+ }
205
+ .bg-bags {
206
+ background: hsl(var(--color-bags));
207
+ }
208
+ .bg-bags\/20 {
209
+ background: hsl(var(--color-bags), 0.2);
210
+ }
211
+ .text-bags {
212
+ color: hsl(var(--color-bags));
213
+ }
214
+ .bg-moonshot {
215
+ background: hsl(var(--color-moonshot));
216
+ }
217
+ .bg-moonshot\/20 {
218
+ background: hsl(var(--color-moonshot), 0.2);
219
+ }
220
+ .text-moonshot {
221
+ color: hsl(var(--color-moonshot));
222
+ }
223
+ .bg-heaven {
224
+ background: hsl(var(--color-heaven));
225
+ }
226
+ .bg-heaven\/20 {
227
+ background: hsl(var(--color-heaven), 0.2);
228
+ }
229
+ .text-heaven {
230
+ color: hsl(var(--color-heaven));
231
+ }
232
+ .bg-sugar {
233
+ background: hsl(var(--color-sugar));
234
+ }
235
+ .bg-sugar\/20 {
236
+ background: hsl(var(--color-sugar), 0.2);
237
+ }
238
+ .text-sugar {
239
+ color: hsl(var(--color-sugar));
240
+ }
241
+ .bg-believe {
242
+ background: hsl(var(--color-believe));
243
+ }
244
+ .bg-believe\/20 {
245
+ background: hsl(var(--color-believe), 0.2);
246
+ }
247
+ .text-believe {
248
+ color: hsl(var(--color-believe));
249
+ }
250
+ .bg-jupstudio {
251
+ background: hsl(var(--color-jupstudio));
252
+ }
253
+ .bg-jupstudio\/20 {
254
+ background: hsl(var(--color-jupstudio), 0.2);
255
+ }
256
+ .text-jupstudio {
257
+ color: hsl(var(--color-jupstudio));
258
+ }
259
+ .bg-moonit {
260
+ background: hsl(var(--color-moonit));
261
+ }
262
+ .bg-moonit\/20 {
263
+ background: hsl(var(--color-moonit), 0.2);
264
+ }
265
+ .text-moonit {
266
+ color: hsl(var(--color-moonit));
267
+ }
268
+ .bg-boop {
269
+ background: hsl(var(--color-boop));
270
+ }
271
+ .bg-boop\/20 {
272
+ background: hsl(var(--color-boop), 0.2);
273
+ }
274
+ .text-boop {
275
+ color: hsl(var(--color-boop));
276
+ }
277
+ .bg-launchlab {
278
+ background: hsl(var(--color-launchlab));
279
+ }
280
+ .bg-launchlab\/20 {
281
+ background: hsl(var(--color-launchlab), 0.2);
282
+ }
283
+ .text-launchlab {
284
+ color: hsl(var(--color-launchlab));
285
+ }
286
+ .bg-virtual-curve {
287
+ background: hsl(var(--color-virtual-curve));
288
+ }
289
+ .bg-virtual-curve\/20 {
290
+ background: hsl(var(--color-virtual-curve), 0.2);
291
+ }
292
+ .text-virtual-curve {
293
+ color: hsl(var(--color-virtual-curve));
294
+ }
295
+ .bg-raydium {
296
+ background: hsl(var(--color-raydium));
297
+ }
298
+ .bg-raydium\/20 {
299
+ background: hsl(var(--color-raydium), 0.2);
300
+ }
301
+ .text-raydium {
302
+ color: hsl(var(--color-raydium));
303
+ }
304
+ .bg-meteora {
305
+ background: hsl(var(--color-meteora));
306
+ }
307
+ .bg-meteora\/20 {
308
+ background: hsl(var(--color-meteora), 0.2);
309
+ }
310
+ .text-meteora {
311
+ color: hsl(var(--color-meteora));
312
+ }
313
+ .bg-pump-amm {
314
+ background: hsl(var(--color-pump-amm));
315
+ }
316
+ .bg-pump-amm\/20 {
317
+ background: hsl(var(--color-pump-amm), 0.2);
318
+ }
319
+ .text-pump-amm {
320
+ color: hsl(var(--color-pump-amm));
321
+ }
322
+ .bg-orca {
323
+ background: hsl(var(--color-orca));
324
+ }
325
+ .bg-orca\/20 {
326
+ background: hsl(var(--color-orca), 0.2);
327
+ }
328
+ .text-orca {
329
+ color: hsl(var(--color-orca));
330
+ }
331
+ }
package/package.json ADDED
@@ -0,0 +1,66 @@
1
+ {
2
+ "name": "@liberfi.io/ui",
3
+ "version": "0.1.0",
4
+ "description": "Base UI library for Liberfi React SDK",
5
+ "main": "dist/index.js",
6
+ "module": "dist/index.mjs",
7
+ "types": "dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "require": "./dist/index.js",
12
+ "import": "./dist/index.mjs"
13
+ },
14
+ "./tailwind": {
15
+ "types": "./dist/tailwind/tailwind.d.ts",
16
+ "require": "./dist/tailwind/tailwind.js",
17
+ "import": "./dist/tailwind/tailwind.mjs"
18
+ },
19
+ "./tailwind/*": "./dist/tailwind/*"
20
+ },
21
+ "keywords": [],
22
+ "author": "liberfi.io",
23
+ "files": [
24
+ "dist"
25
+ ],
26
+ "publishConfig": {
27
+ "access": "public"
28
+ },
29
+ "dependencies": {
30
+ "@heroui/react": "^2.8.4",
31
+ "clsx": "^2.1.1",
32
+ "copy-to-clipboard": "^3.3.3",
33
+ "framer-motion": "^12.23.13",
34
+ "react": "^19.1.1",
35
+ "react-dom": "^19.1.1",
36
+ "react-hot-toast": "^2.6.0",
37
+ "react-virtuoso": "^4.14.1",
38
+ "tailwind-variants": "^3.1.1",
39
+ "tailwindcss": "^4.1.13",
40
+ "@liberfi.io/utils": "0.1.0",
41
+ "@liberfi.io/i18n": "0.1.2"
42
+ },
43
+ "devDependencies": {
44
+ "@tailwindcss/cli": "^4.1.13",
45
+ "@tailwindcss/postcss": "^4.1.13",
46
+ "@types/node": "^24.5.0",
47
+ "@types/react": "^19.1.13",
48
+ "@types/react-dom": "^19.1.9",
49
+ "autoprefixer": "^10.4.21",
50
+ "fs-extra": "^11.3.2",
51
+ "postcss": "^8.5.6",
52
+ "tsup": "^8.5.0",
53
+ "typescript": "^5.9.2",
54
+ "tsconfig": "0.1.0"
55
+ },
56
+ "peerDependencies": {
57
+ "react": ">=18",
58
+ "react-dom": ">=18"
59
+ },
60
+ "scripts": {
61
+ "build": "tsup && pnpm copyTailwind",
62
+ "build:css": "pnpm dlx @tailwindcss/cli -i ./src/tailwind/tailwind.css -o ./dist/styles.css",
63
+ "test": "echo \"Error: no test specified\" && exit 1",
64
+ "copyTailwind": "node ./script/copyTailwind.js"
65
+ }
66
+ }