@rash2x/bridge-widget 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,282 @@
1
+ @import "tailwindcss";
2
+
3
+ @custom-variant dark (&:is([data-theme="dark"] *));
4
+
5
+ /* ===== TOKENS: системные скейлы ===== */
6
+ @theme {
7
+ /* Custom bridge radius */
8
+ --radius-6: 6px;
9
+ --radius-12: 12px;
10
+ --radius-16: 16px;
11
+ --radius-20: 20px;
12
+ --radius-26: 26px;
13
+ --radius-36: 36px;
14
+ --radius-40: 40px;
15
+
16
+ --text-32: 32px;
17
+
18
+ /* Custom bridge blur */
19
+ --blur-35: 35px;
20
+
21
+ --color-body: #E3E3E3;
22
+ }
23
+
24
+ /* ===== LIGHT THEME ===== */
25
+ :root {
26
+ --radius: 0.625rem;
27
+
28
+ /* Shadcn design tokens */
29
+ --background: #FFF;
30
+ --foreground: #171717;
31
+ --card: #F2F2F2;
32
+ --card-foreground: #171717;
33
+ --popover: #FFFFFF;
34
+ --popover-foreground: #171717;
35
+ --dialog: #FFFFFF;
36
+ --dialog-foreground: #171717;
37
+ --primary: #0095F9;
38
+ --primary-foreground: #FFFFFF;
39
+ --secondary: #FFFFFFE5;
40
+ --secondary-foreground: #000000B2;
41
+ --muted: #E4E6E7;
42
+ --muted-focus: #D9DCDE;
43
+ --muted-foreground: #000000B2;
44
+ --priority: #00000080;
45
+ --accent: #98AAB426;
46
+ --accent-foreground: #171717;
47
+ --destructive: #FF3B30;
48
+ --destructive-foreground: #FFFFFF;
49
+ --border: #00000029;
50
+ --input: #98AAB426;
51
+ --ring: #5200FF;
52
+
53
+ /* Custom semantic tokens */
54
+ --link: #0099FF;
55
+ --filter: #F2F2F2;
56
+ --filter-foreground: #000000B2;
57
+ --filter-active: #5100FF;
58
+ --filter-active-foreground: #FFFFFF;
59
+ --swap: #fff;
60
+ --swap-foreground: #171717;
61
+ --settings-button: #F2F2F2;
62
+ --settings-button-foreground: #000000CC;
63
+ --settings-active: #5200FF;
64
+ --settings-active-foreground: #FFFFFF;
65
+ --modal-x: #000000CC;
66
+ --modal-x-foreground: #FFFFFF;
67
+ --input-icon: #000000A6;
68
+ --input-text: #171717;
69
+ --input-placeholder: #000000A6;
70
+ --modal-group-label: #00000080;
71
+ --switch-active: #5200FF;
72
+ --switch-inactive: #CACFD3;
73
+ --input-button: #98AAB440;
74
+ --input-button-hover: #98AAB414;
75
+ --input-button-foreground: #515151;
76
+ --input-x-bg: #FFFFFF;
77
+ --input-x: #8A8A8A;
78
+ --receive-icon: #5B5C5D;
79
+ --receive-label: #00000080;
80
+ --receive-tip: #FFFFFF;
81
+ --modal-blur: #0A0A0A4D;
82
+ --balance-icon: #17171780;
83
+ --balance-text: #000000B2;
84
+ --section-focus-bg: #D9DCDE;
85
+ --section-wallet-amount-usd: #000000B2;
86
+ --modal-item-subtext: #00000080;
87
+ --settings-label: #00000080;
88
+ --settings-amount: #000000;
89
+ --input-helper: #00000080;
90
+ --another-label: #000000B2;
91
+ --thumb-bg: #FFFFFF;
92
+
93
+ /* Modal item hover states */
94
+ --modal-item-hover: #98AAB426;
95
+ --modal-item-selected: #5200FF;
96
+
97
+ /* Default chart colors */
98
+ --chart-1: oklch(0.646 0.222 41.116);
99
+ --chart-2: oklch(0.6 0.118 184.704);
100
+ --chart-3: oklch(0.398 0.07 227.392);
101
+ --chart-4: oklch(0.828 0.189 84.429);
102
+ --chart-5: oklch(0.769 0.188 70.08);
103
+ --sidebar: oklch(0.985 0 0);
104
+ --sidebar-foreground: oklch(0.145 0 0);
105
+ --sidebar-primary: oklch(0.205 0 0);
106
+ --sidebar-primary-foreground: oklch(0.985 0 0);
107
+ --sidebar-accent: oklch(0.97 0 0);
108
+ --sidebar-accent-foreground: oklch(0.205 0 0);
109
+ --sidebar-border: oklch(0.922 0 0);
110
+ --sidebar-ring: oklch(0.708 0 0);
111
+ }
112
+
113
+ /* ===== TAILWIND THEME TOKENS ===== */
114
+ @theme inline {
115
+ --rounded-custom: calc(value * 4);
116
+ --radius-sm: calc(var(--radius) - 4px);
117
+ --radius-md: calc(var(--radius) - 2px);
118
+ --radius-lg: var(--radius);
119
+ --radius-xl: calc(var(--radius) + 4px);
120
+
121
+ /* Core design tokens */
122
+ --color-background: var(--background);
123
+ --color-foreground: var(--foreground);
124
+ --color-card: var(--card);
125
+ --color-card-foreground: var(--card-foreground);
126
+ --color-popover: var(--popover);
127
+ --color-popover-foreground: var(--popover-foreground);
128
+ --color-dialog: var(--dialog);
129
+ --color-dialog-foreground: var(--dialog-foreground);
130
+ --color-primary: var(--primary);
131
+ --color-primary-foreground: var(--primary-foreground);
132
+ --color-secondary: var(--secondary);
133
+ --color-secondary-foreground: var(--secondary-foreground);
134
+ --color-muted: var(--muted);
135
+ --color-muted-foreground: var(--muted-foreground);
136
+ --color-muted-focus: var(--muted-focus);
137
+ --color-priority: var(--priority);
138
+ --color-accent: var(--accent);
139
+ --color-accent-foreground: var(--accent-foreground);
140
+ --color-destructive: var(--destructive);
141
+ --color-destructive-foreground: var(--destructive-foreground);
142
+ --color-border: var(--border);
143
+ --color-input: var(--input);
144
+ --color-ring: var(--ring);
145
+
146
+ /* Semantic tokens */
147
+ --color-link: var(--link);
148
+ --color-filter: var(--filter);
149
+ --color-filter-foreground: var(--filter-foreground);
150
+ --color-filter-active: var(--filter-active);
151
+ --color-filter-active-foreground: var(--filter-active-foreground);
152
+ --color-swap: var(--swap);
153
+ --color-swap-foreground: var(--swap-foreground);
154
+ --color-settings-button: var(--settings-button);
155
+ --color-settings-button-foreground: var(--settings-button-foreground);
156
+ --color-settings-active: var(--settings-active);
157
+ --color-settings-active-foreground: var(--settings-active-foreground);
158
+ --color-modal-x: var(--modal-x);
159
+ --color-modal-x-foreground: var(--modal-x-foreground);
160
+ --color-input-icon: var(--input-icon);
161
+ --color-input-text: var(--input-text);
162
+ --color-input-placeholder: var(--input-placeholder);
163
+ --color-modal-group-label: var(--modal-group-label);
164
+ --color-switch-active: var(--switch-active);
165
+ --color-switch-inactive: var(--switch-inactive);
166
+ --color-input-button: var(--input-button);
167
+ --color-input-button-hover: var(--input-button-hover);
168
+ --color-input-button-foreground: var(--input-button-foreground);
169
+ --color-input-x-bg: var(--input-x-bg);
170
+ --color-input-x: var(--input-x);
171
+ --color-receive-icon: var(--receive-icon);
172
+ --color-receive-label: var(--receive-label);
173
+ --color-receive-tip: var(--receive-tip);
174
+ --color-modal-blur: var(--modal-blur);
175
+ --color-balance-icon: var(--balance-icon);
176
+ --color-balance-text: var(--balance-text);
177
+ --color-section-focus-bg: var(--section-focus-bg);
178
+ --color-section-wallet-amount-usd: var(--section-wallet-amount-usd);
179
+ --color-modal-item-subtext: var(--modal-item-subtext);
180
+ --color-settings-label: var(--settings-label);
181
+ --color-settings-amount: var(--settings-amount);
182
+ --color-input-helper: var(--input-helper);
183
+ --color-another-label: var(--another-label);
184
+ --color-thumb-bg: var(--thumb-bg);
185
+ --color-modal-item-hover: var(--modal-item-hover);
186
+ --color-modal-item-selected: var(--modal-item-selected);
187
+
188
+ /* Chart colors */
189
+ --color-chart-1: var(--chart-1);
190
+ --color-chart-2: var(--chart-2);
191
+ --color-chart-3: var(--chart-3);
192
+ --color-chart-4: var(--chart-4);
193
+ --color-chart-5: var(--chart-5);
194
+
195
+ /* Sidebar colors */
196
+ --color-sidebar: var(--sidebar);
197
+ --color-sidebar-foreground: var(--sidebar-foreground);
198
+ --color-sidebar-primary: var(--sidebar-primary);
199
+ --color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
200
+ --color-sidebar-accent: var(--sidebar-accent);
201
+ --color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
202
+ --color-sidebar-border: var(--sidebar-border);
203
+ --color-sidebar-ring: var(--sidebar-ring);
204
+ }
205
+
206
+ /* ===== DARK THEME ===== */
207
+ [data-theme="dark"] {
208
+ /* Core design tokens */
209
+ --background: #000000;
210
+ --foreground: #FFFFFF;
211
+ --card: #000000;
212
+ --card-foreground: #FFFFFF;
213
+ --popover: #000000;
214
+ --popover-foreground: #FFFFFF;
215
+ --dialog: #000000;
216
+ --dialog-foreground: #FFFFFF;
217
+ --primary: #5200FF;
218
+ --primary-foreground: #FFFFFF;
219
+ --secondary: #FFFFFF1A;
220
+ --secondary-foreground: #D5D5D6;
221
+ --muted: #98AAB414;
222
+ --muted-focus: #3C3D3F;
223
+ --muted-foreground: #FFFFFFB2;
224
+ --priority: #FFFFFF80;
225
+ --accent: #98AAB426;
226
+ --accent-foreground: #FFFFFF;
227
+ --destructive: #FF3B30;
228
+ --destructive-foreground: #FFFFFF;
229
+ --border: #FFFFFF29;
230
+ --input: #98AAB426;
231
+ --ring: #5200FF;
232
+
233
+ /* Custom semantic tokens */
234
+ --link: #FFFFFF;
235
+ --filter: #1D1D1D;
236
+ --filter-foreground: #FFFFFFB2;
237
+ --filter-active: #5100FF;
238
+ --filter-active-foreground: #FFFFFF;
239
+ --swap: #2F3538;
240
+ --swap-foreground: #FFFFFF;
241
+ --settings-button: #191A1B;
242
+ --settings-button-foreground: #FFFFFFCC;
243
+ --settings-active: #5200FF;
244
+ --settings-active-foreground: #FFFFFF;
245
+ --modal-x: #FFFFFFCC;
246
+ --modal-x-foreground: #000000;
247
+ --input-icon: #FFFFFFA6;
248
+ --input-text: #FFFFFF;
249
+ --input-placeholder: #FFFFFFA6;
250
+ --modal-group-label: #FFFFFF80;
251
+ --switch-active: #5200FF;
252
+ --switch-inactive: #FFFFFF26;
253
+ --input-button: #FFFFFF1A;
254
+ --input-button-hover: #FFFFFF33;
255
+ --input-button-foreground: #D5D5D6;
256
+ --input-x-bg: #2B3033;
257
+ --input-x: #C4C4C4;
258
+ --receive-icon: #FFFFFFCC;
259
+ --receive-label: #FFFFFF80;
260
+ --receive-tip: #FFFFFF;
261
+ --modal-blur: #0A0A0A4D;
262
+ --balance-icon: #FFFFFFB2;
263
+ --balance-text: #FFFFFFB2;
264
+ --section-focus-bg: #98AAB414;
265
+ --section-wallet-amount-usd: #FFFFFFB2;
266
+ --modal-item-subtext: #FFFFFF80;
267
+ --settings-label: #FFFFFF80;
268
+ --settings-amount: #FFFFFF;
269
+ --input-helper: #FFFFFF80;
270
+ --another-label: #FFFFFFB2;
271
+ --thumb-bg: #FFFFFF;
272
+
273
+ /* Modal item hover states */
274
+ --modal-item-hover: #FFFFFF1A;
275
+ --modal-item-selected: #FFFFFF26;
276
+ }
277
+
278
+ @layer base {
279
+ * {
280
+ @apply border-border outline-ring/50;
281
+ }
282
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "url": "https://app.evaa.finance",
3
+ "name": "EVAA",
4
+ "iconUrl": "https://app.evaa.finance/evaa-logo.jpg",
5
+ "termsOfUseUrl": "https://app.evaa.finance/evaa_protocol_terms_of_use.pdf",
6
+ "privacyPolicyUrl": "https://app.evaa.finance/evaa_privacy_and_cookie_policy.pdf"
7
+ }
package/dist/vite.svg ADDED
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>
package/package.json ADDED
@@ -0,0 +1,160 @@
1
+ {
2
+ "name": "@rash2x/bridge-widget",
3
+ "version": "0.1.0",
4
+ "description": "Cross-chain bridge widget powered by Stargate Protocol with multi-chain wallet support",
5
+ "type": "module",
6
+ "main": "./dist/evaa-bridge.cjs",
7
+ "module": "./dist/evaa-bridge.mjs",
8
+ "types": "./dist/index.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "types": "./dist/index.d.ts",
12
+ "import": "./dist/evaa-bridge.mjs",
13
+ "require": "./dist/evaa-bridge.cjs"
14
+ },
15
+ "./styles.css": "./dist/styles.css"
16
+ },
17
+ "files": [
18
+ "dist",
19
+ "README.md",
20
+ "LICENSE"
21
+ ],
22
+ "engines": {
23
+ "node": ">=18.0.0"
24
+ },
25
+ "scripts": {
26
+ "dev": "vite",
27
+ "build": "tsc -b && vite build",
28
+ "build:lib": "tsc -p tsconfig.lib.json && vite build --config vite.config.lib.ts",
29
+ "lint": "eslint .",
30
+ "preview": "vite preview",
31
+ "prepublishOnly": "npm run build:lib"
32
+ },
33
+ "repository": {
34
+ "type": "git",
35
+ "url": "https://github.com/evaa-finance/bridge-widget"
36
+ },
37
+ "keywords": [
38
+ "bridge",
39
+ "cross-chain",
40
+ "stargate",
41
+ "evaa",
42
+ "ton",
43
+ "ethereum",
44
+ "tron",
45
+ "defi",
46
+ "widget",
47
+ "react"
48
+ ],
49
+ "author": "EVAA Finance",
50
+ "license": "MIT",
51
+ "peerDependencies": {
52
+ "@tanstack/react-query": "^5.0.0",
53
+ "@ton/core": "^0.61.0",
54
+ "@ton/crypto": "^3.0.0",
55
+ "@ton/ton": "^15.0.0",
56
+ "@tonconnect/ui-react": "^2.0.0",
57
+ "@tronweb3/tronwallet-adapter-react-hooks": "^1.0.0",
58
+ "@tronweb3/tronwallet-adapters": "^1.0.0",
59
+ "ethers": "^6.0.0",
60
+ "react": "^18.2.0",
61
+ "react-dom": "^18.2.0",
62
+ "tronweb": "^6.0.0",
63
+ "wagmi": "^2.0.0"
64
+ },
65
+ "peerDependenciesMeta": {
66
+ "wagmi": {
67
+ "optional": true
68
+ },
69
+ "ethers": {
70
+ "optional": true
71
+ },
72
+ "tronweb": {
73
+ "optional": true
74
+ },
75
+ "@tonconnect/ui-react": {
76
+ "optional": true
77
+ },
78
+ "@ton/core": {
79
+ "optional": true
80
+ },
81
+ "@ton/crypto": {
82
+ "optional": true
83
+ },
84
+ "@ton/ton": {
85
+ "optional": true
86
+ },
87
+ "@tronweb3/tronwallet-adapter-react-hooks": {
88
+ "optional": true
89
+ },
90
+ "@tronweb3/tronwallet-adapters": {
91
+ "optional": true
92
+ }
93
+ },
94
+ "dependencies": {
95
+ "@hookform/resolvers": "^5.2.1",
96
+ "@metamask/detect-provider": "^2.0.0",
97
+ "@metamask/sdk-react": "^0.33.0",
98
+ "@radix-ui/react-accordion": "^1.2.12",
99
+ "@radix-ui/react-dialog": "^1.1.14",
100
+ "@radix-ui/react-popover": "^1.1.14",
101
+ "@radix-ui/react-select": "^2.2.5",
102
+ "@radix-ui/react-slot": "^1.2.3",
103
+ "@radix-ui/react-switch": "^1.2.6",
104
+ "@radix-ui/react-tooltip": "^1.2.8",
105
+ "@types/react-window": "^1.8.8",
106
+ "axios": "^1.11.0",
107
+ "class-variance-authority": "^0.7.1",
108
+ "clsx": "^2.1.1",
109
+ "cmdk": "^1.1.1",
110
+ "connectkit": "^1.9.1",
111
+ "framer-motion": "^12.23.12",
112
+ "i18next": "^25.4.1",
113
+ "i18next-browser-languagedetector": "^8.2.0",
114
+ "lucide-react": "^0.539.0",
115
+ "react-canvas-confetti": "^2.0.7",
116
+ "react-hook-form": "^7.62.0",
117
+ "react-i18next": "^15.7.2",
118
+ "react-window": "^1.8.11",
119
+ "sonner": "^1.5.0",
120
+ "tailwind-merge": "^3.3.1",
121
+ "viem": "^2.0.0",
122
+ "zod": "^4.0.17",
123
+ "zustand": "^5.0.7"
124
+ },
125
+ "devDependencies": {
126
+ "@eslint/js": "^9.30.1",
127
+ "@metamask/sdk": "^0.33.0",
128
+ "@tailwindcss/vite": "^4.1.11",
129
+ "@tanstack/react-query": "^5.85.3",
130
+ "@ton/core": "^0.61.0",
131
+ "@ton/crypto": "^3.3.0",
132
+ "@ton/ton": "^15.3.1",
133
+ "@tonconnect/ui-react": "^2.2.0",
134
+ "@tronweb3/tronwallet-adapter-react-hooks": "^1.1.10",
135
+ "@tronweb3/tronwallet-adapter-react-ui": "^1.1.8",
136
+ "@tronweb3/tronwallet-adapters": "^1.2.14",
137
+ "@types/node": "^24.1.0",
138
+ "@types/react": "^18.2.0",
139
+ "@types/react-dom": "^18.2.0",
140
+ "@vitejs/plugin-react": "^4.6.0",
141
+ "buffer": "^6.0.3",
142
+ "eslint": "^9.30.1",
143
+ "eslint-plugin-react-hooks": "^5.2.0",
144
+ "eslint-plugin-react-refresh": "^0.4.20",
145
+ "ethers": "^6.15.0",
146
+ "globals": "^16.3.0",
147
+ "process": "^0.11.10",
148
+ "react": "^18.2.0",
149
+ "react-dom": "^18.2.0",
150
+ "shadcn": "2.9.3-canary.0",
151
+ "tailwindcss": "^4.1.11",
152
+ "tronweb": "^6.0.4",
153
+ "tw-animate-css": "^1.3.6",
154
+ "typescript": "~5.8.3",
155
+ "typescript-eslint": "^8.35.1",
156
+ "view": "^1.1.1",
157
+ "vite": "^7.0.4",
158
+ "wagmi": "^2.16.9"
159
+ }
160
+ }