signer-test-sdk-react 0.0.20 → 0.0.22

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.
Files changed (56) hide show
  1. package/dist/src/AbstraxnProvider.d.ts +2 -2
  2. package/dist/src/AbstraxnProvider.js +627 -602
  3. package/dist/src/AbstraxnProvider.js.map +1 -1
  4. package/dist/src/ConnectButton.css +1 -1
  5. package/dist/src/ExternalWalletButtons.css +1 -1
  6. package/dist/src/WalletModal.css +373 -193
  7. package/dist/src/WalletModal.d.ts +1 -1
  8. package/dist/src/WalletModal.js +45 -108
  9. package/dist/src/WalletModal.js.map +1 -1
  10. package/dist/src/chains.d.ts +3 -4
  11. package/dist/src/chains.js +84 -154
  12. package/dist/src/chains.js.map +1 -1
  13. package/dist/src/components/OnboardingUI/OnboardingUI.css +5 -6
  14. package/dist/src/components/OnboardingUI/OnboardingUIReact.js +9 -3
  15. package/dist/src/components/OnboardingUI/OnboardingUIReact.js.map +1 -1
  16. package/dist/src/components/OnboardingUI/OnboardingUIWeb.js +0 -6
  17. package/dist/src/components/OnboardingUI/OnboardingUIWeb.js.map +1 -1
  18. package/dist/src/components/OnboardingUI/hooks/useAuthMethods.js +57 -0
  19. package/dist/src/components/OnboardingUI/hooks/useAuthMethods.js.map +1 -1
  20. package/dist/src/components/WalletModal/components/ChainSelector.css +102 -249
  21. package/dist/src/components/WalletModal/components/ChainSelector.d.ts +6 -7
  22. package/dist/src/components/WalletModal/components/ChainSelector.js +27 -68
  23. package/dist/src/components/WalletModal/components/ChainSelector.js.map +1 -1
  24. package/dist/src/components/WalletModal/components/ExportKeyModal.css +88 -89
  25. package/dist/src/components/WalletModal/components/ExportKeyModal.d.ts +1 -6
  26. package/dist/src/components/WalletModal/components/ExportKeyModal.js +11 -6
  27. package/dist/src/components/WalletModal/components/ExportKeyModal.js.map +1 -1
  28. package/dist/src/components/WalletModal/components/ExportWarningModal.css +2 -107
  29. package/dist/src/components/WalletModal/components/ExportWarningModal.d.ts +1 -7
  30. package/dist/src/components/WalletModal/components/ExportWarningModal.js +3 -5
  31. package/dist/src/components/WalletModal/components/ExportWarningModal.js.map +1 -1
  32. package/dist/src/components/WalletModal/components/ManageWalletModal.css +4 -90
  33. package/dist/src/components/WalletModal/components/ManageWalletModal.d.ts +3 -3
  34. package/dist/src/components/WalletModal/components/ManageWalletModal.js +13 -28
  35. package/dist/src/components/WalletModal/components/ManageWalletModal.js.map +1 -1
  36. package/dist/src/components/WalletModal/components/PreviewTransactionModal.css +4 -3
  37. package/dist/src/components/WalletModal/components/ReceiveModal.css +58 -93
  38. package/dist/src/components/WalletModal/components/ReceiveModal.js +1 -1
  39. package/dist/src/components/WalletModal/components/ReceiveModal.js.map +1 -1
  40. package/dist/src/components/WalletModal/components/SendModal.css +127 -170
  41. package/dist/src/components/WalletModal/components/SendModal.d.ts +6 -4
  42. package/dist/src/components/WalletModal/components/SendModal.js +39 -131
  43. package/dist/src/components/WalletModal/components/SendModal.js.map +1 -1
  44. package/dist/src/components/WalletModal/components/SuccessModal.css +8 -7
  45. package/dist/src/components/WalletModal/components/index.d.ts +0 -2
  46. package/dist/src/components/WalletModal/components/index.js +0 -1
  47. package/dist/src/components/WalletModal/components/index.js.map +1 -1
  48. package/dist/src/hooks.d.ts +4399 -448
  49. package/dist/src/hooks.js +53 -47
  50. package/dist/src/hooks.js.map +1 -1
  51. package/dist/tsconfig.tsbuildinfo +1 -1
  52. package/package.json +1 -1
  53. package/dist/src/components/WalletModal/components/TokenSelectorModal.css +0 -240
  54. package/dist/src/components/WalletModal/components/TokenSelectorModal.d.ts +0 -21
  55. package/dist/src/components/WalletModal/components/TokenSelectorModal.js +0 -44
  56. package/dist/src/components/WalletModal/components/TokenSelectorModal.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "signer-test-sdk-react",
3
- "version": "0.0.20",
3
+ "version": "0.0.22",
4
4
  "description": "React SDK for Abstraxn Wallet - React components, hooks, and providers for seamless Web3 wallet integration",
5
5
  "main": "./dist/src/index.js",
6
6
  "module": "./dist/src/index.js",
@@ -1,240 +0,0 @@
1
- /* Token Selector Modal Styles */
2
-
3
- .wallet-modal-token-selector {
4
- max-width: 420px;
5
- width: 100%;
6
- max-height: 85vh;
7
- display: flex;
8
- flex-direction: column;
9
- }
10
-
11
- .wallet-modal-token-selector-header {
12
- display: flex;
13
- align-items: center;
14
- justify-content: space-between;
15
- padding: 0;
16
- border-bottom: 1px solid;
17
- gap: 16px;
18
- }
19
-
20
- .wallet-modal-theme-dark .wallet-modal-token-selector-header {
21
- border-color: #2a2a2a;
22
- }
23
-
24
- .wallet-modal-theme-light .wallet-modal-token-selector-header {
25
- border-color: #e5e7eb;
26
- }
27
-
28
- .wallet-modal-content .wallet-modal-token-selector-title {
29
- font-size: 18px;
30
- font-weight: 500;
31
- margin: 0;
32
- flex: 1;
33
- text-align: center;
34
- }
35
-
36
- .wallet-modal-content.wallet-modal-theme-dark .wallet-modal-token-selector-title {
37
- color: #ffffff;
38
- }
39
-
40
- .wallet-modal-content.wallet-modal-theme-light .wallet-modal-token-selector-title {
41
- color: #111827;
42
- }
43
-
44
- .wallet-modal-token-selector-search {
45
- position: relative;
46
- display: flex;
47
- align-items: center;
48
- gap: 12px;
49
- border-bottom: 1px solid;
50
- }
51
-
52
- .wallet-modal-theme-dark .wallet-modal-token-selector-search {
53
- border-color: #2a2a2a;
54
- }
55
-
56
- .wallet-modal-theme-light .wallet-modal-token-selector-search {
57
- border-color: #e5e7eb;
58
- }
59
-
60
- .wallet-modal-token-selector-search-icon {
61
- flex-shrink: 0;
62
- opacity: 0.5;
63
- }
64
-
65
- .wallet-modal-theme-dark .wallet-modal-token-selector-search-icon {
66
- color: #9ca3af;
67
- }
68
-
69
- .wallet-modal-theme-light .wallet-modal-token-selector-search-icon {
70
- color: #6b7280;
71
- }
72
-
73
- .wallet-modal-token-selector-search-input {
74
- flex: 1;
75
- border: none;
76
- background: transparent;
77
- outline: none;
78
- font-size: 14px;
79
- padding: 8px 0;
80
- }
81
-
82
- .wallet-modal-theme-dark .wallet-modal-token-selector-search-input {
83
- color: #ffffff;
84
- }
85
-
86
- .wallet-modal-theme-light .wallet-modal-token-selector-search-input {
87
- color: #111827;
88
- }
89
-
90
- .wallet-modal-token-selector-search-input::placeholder {
91
- opacity: 0.5;
92
- }
93
-
94
- .wallet-modal-theme-dark .wallet-modal-token-selector-search-input::placeholder {
95
- color: #9ca3af;
96
- }
97
-
98
- .wallet-modal-theme-light .wallet-modal-token-selector-search-input::placeholder {
99
- color: #6b7280;
100
- }
101
-
102
- .wallet-modal-token-selector-list {
103
- flex: 1;
104
- overflow-y: auto;
105
- padding: 8px 0;
106
- }
107
-
108
- .wallet-modal-token-selector-empty {
109
- padding: 40px 0;
110
- text-align: center;
111
- opacity: 0.6;
112
- }
113
-
114
- .wallet-modal-theme-dark .wallet-modal-token-selector-empty {
115
- color: #9ca3af;
116
- }
117
-
118
- .wallet-modal-theme-light .wallet-modal-token-selector-empty {
119
- color: #6b7280;
120
- }
121
-
122
- .wallet-modal-token-selector-item {
123
- width: 100%;
124
- padding: 12px 0;
125
- background: transparent;
126
- border: none;
127
- cursor: pointer;
128
- transition: all 0.2s;
129
- display: flex;
130
- align-items: center;
131
- justify-content: space-between;
132
- gap: 12px;
133
- text-align: left;
134
- }
135
-
136
- .wallet-modal-theme-dark .wallet-modal-token-selector-item {
137
- color: #ffffff;
138
- }
139
-
140
- .wallet-modal-theme-light .wallet-modal-token-selector-item {
141
- color: #111827;
142
- }
143
-
144
- .wallet-modal-theme-dark .wallet-modal-token-selector-item:hover {
145
- background: rgba(255, 255, 255, 0.05);
146
- }
147
-
148
- .wallet-modal-theme-light .wallet-modal-token-selector-item:hover {
149
- background: rgba(0, 0, 0, 0.03);
150
- }
151
-
152
- .wallet-modal-token-selector-item.selected {
153
- background: rgba(147, 51, 234, 0.1);
154
- }
155
-
156
- .wallet-modal-token-selector-item-info {
157
- display: flex;
158
- align-items: center;
159
- gap: 12px;
160
- flex: 1;
161
- min-width: 0;
162
- }
163
-
164
- .wallet-modal-token-selector-item-icon {
165
- width: 40px;
166
- height: 40px;
167
- flex-shrink: 0;
168
- display: flex;
169
- align-items: center;
170
- justify-content: center;
171
- }
172
-
173
- .wallet-modal-token-selector-item-icon-img {
174
- width: 100%;
175
- height: 100%;
176
- border-radius: 50%;
177
- object-fit: cover;
178
- }
179
-
180
- .wallet-modal-token-selector-item-icon-placeholder {
181
- width: 100%;
182
- height: 100%;
183
- border-radius: 50%;
184
- display: flex;
185
- align-items: center;
186
- justify-content: center;
187
- font-weight: 700;
188
- font-size: 16px;
189
- text-transform: uppercase;
190
- }
191
-
192
- .wallet-modal-theme-dark .wallet-modal-token-selector-item-icon-placeholder {
193
- background: #2a2a2a;
194
- color: #9ca3af;
195
- }
196
-
197
- .wallet-modal-theme-light .wallet-modal-token-selector-item-icon-placeholder {
198
- background: #f1f5f9;
199
- color: #64748b;
200
- }
201
-
202
- .wallet-modal-token-selector-item-details {
203
- display: flex;
204
- flex-direction: column;
205
- gap: 4px;
206
- flex: 1;
207
- min-width: 0;
208
- }
209
-
210
- .wallet-modal-token-selector-item-name {
211
- font-size: 15px;
212
- font-weight: 600;
213
- white-space: nowrap;
214
- overflow: hidden;
215
- text-overflow: ellipsis;
216
- }
217
-
218
- .wallet-modal-theme-dark .wallet-modal-token-selector-item-name {
219
- color: #ffffff;
220
- }
221
-
222
- .wallet-modal-theme-light .wallet-modal-token-selector-item-name {
223
- color: #111827;
224
- }
225
-
226
- .wallet-modal-token-selector-item-balance {
227
- font-size: 13px;
228
- opacity: 0.7;
229
- white-space: nowrap;
230
- overflow: hidden;
231
- text-overflow: ellipsis;
232
- }
233
-
234
- .wallet-modal-theme-dark .wallet-modal-token-selector-item-balance {
235
- color: #9ca3af;
236
- }
237
-
238
- .wallet-modal-theme-light .wallet-modal-token-selector-item-balance {
239
- color: #6b7280;
240
- }
@@ -1,21 +0,0 @@
1
- import type { ChainData } from "../../../chains";
2
- import "./TokenSelectorModal.css";
3
- export interface TokenData {
4
- address: string;
5
- symbol: string;
6
- name: string;
7
- decimals: number;
8
- iconUrl?: string;
9
- balance?: bigint;
10
- isNative?: boolean;
11
- }
12
- export interface TokenSelectorModalProps {
13
- isOpen: boolean;
14
- onClose: () => void;
15
- onTokenSelect: (token: TokenData) => void;
16
- currentChain: ChainData | null;
17
- tokens: TokenData[];
18
- selectedToken?: TokenData;
19
- theme?: "light" | "dark";
20
- }
21
- export declare function TokenSelectorModal({ isOpen, onClose, onTokenSelect, tokens, selectedToken, theme, }: TokenSelectorModalProps): import("react/jsx-runtime").JSX.Element | null;
@@ -1,44 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /**
3
- * Token Selector Modal Component
4
- */
5
- import { useState, useEffect, useMemo } from "react";
6
- import "./TokenSelectorModal.css";
7
- export function TokenSelectorModal({ isOpen, onClose, onTokenSelect, tokens, selectedToken, theme = "dark", }) {
8
- const [searchQuery, setSearchQuery] = useState("");
9
- // Reset state when opened
10
- useEffect(() => {
11
- if (isOpen) {
12
- setSearchQuery("");
13
- }
14
- }, [isOpen]);
15
- const filteredTokens = useMemo(() => {
16
- return tokens.filter((token) => {
17
- const query = searchQuery.toLowerCase();
18
- return (token.name.toLowerCase().includes(query) ||
19
- token.symbol.toLowerCase().includes(query) ||
20
- token.address.toLowerCase().includes(query));
21
- });
22
- }, [tokens, searchQuery]);
23
- const formatBalance = (balance, decimals) => {
24
- if (!balance || !decimals)
25
- return "0";
26
- const divisor = BigInt(10 ** decimals);
27
- const integerPart = balance / divisor;
28
- const fractionalPart = balance % divisor;
29
- const fractionalStr = fractionalPart.toString().padStart(decimals, "0");
30
- const trimmedFractional = fractionalStr.replace(/0+$/, "");
31
- if (trimmedFractional === "") {
32
- return integerPart.toString();
33
- }
34
- return `${integerPart}.${trimmedFractional.slice(0, 6)}`;
35
- };
36
- const handleTokenSelect = (token) => {
37
- onTokenSelect(token);
38
- onClose();
39
- };
40
- if (!isOpen)
41
- return null;
42
- return (_jsx("div", { className: `wallet-modal-overlay wallet-modal-theme-${theme}`, onClick: onClose, children: _jsxs("div", { className: `wallet-modal-content wallet-modal-theme-${theme} wallet-modal-token-selector`, onClick: (e) => e.stopPropagation(), children: [_jsxs("div", { className: "wallet-modal-token-selector-header", children: [_jsx("button", { className: "wallet-modal-back", onClick: onClose, children: _jsx("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", children: _jsx("path", { d: "M12.5 15L7.5 10L12.5 5", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }) }), _jsx("h2", { className: "wallet-modal-token-selector-title", children: "Select a Token" }), _jsx("button", { className: "wallet-modal-close", onClick: onClose, children: _jsx("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", children: _jsx("path", { d: "M15 5L5 15M5 5L15 15", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }) })] }), _jsxs("div", { className: "wallet-modal-token-selector-search", children: [_jsxs("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", className: "wallet-modal-token-selector-search-icon", children: [_jsx("circle", { cx: "8.5", cy: "8.5", r: "5.5", stroke: "currentColor", strokeWidth: "1.5" }), _jsx("path", { d: "M12.5 12.5L16 16", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" })] }), _jsx("input", { type: "text", className: "wallet-modal-token-selector-search-input", placeholder: "Search or Paste token address", value: searchQuery, onChange: (e) => setSearchQuery(e.target.value), autoFocus: true })] }), _jsx("div", { className: "wallet-modal-token-selector-list", children: filteredTokens.length === 0 ? (_jsx("div", { className: "wallet-modal-token-selector-empty", children: _jsx("p", { children: "No tokens found" }) })) : (filteredTokens.map((token) => (_jsx("button", { className: `wallet-modal-token-selector-item ${selectedToken?.address === token.address ? "selected" : ""}`, onClick: () => handleTokenSelect(token), children: _jsxs("div", { className: "wallet-modal-token-selector-item-info", children: [_jsx("div", { className: "wallet-modal-token-selector-item-icon", children: token.iconUrl ? (_jsx("img", { src: token.iconUrl, alt: token.name, className: "wallet-modal-token-selector-item-icon-img" })) : (_jsx("div", { className: "wallet-modal-token-selector-item-icon-placeholder", children: token.symbol.charAt(0) })) }), _jsxs("div", { className: "wallet-modal-token-selector-item-details", children: [_jsx("div", { className: "wallet-modal-token-selector-item-name", children: token.name }), _jsxs("div", { className: "wallet-modal-token-selector-item-balance", children: [formatBalance(token.balance, token.decimals), " ", token.symbol] })] })] }) }, token.address)))) })] }) }));
43
- }
44
- //# sourceMappingURL=TokenSelectorModal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TokenSelectorModal.js","sourceRoot":"","sources":["../../../../../src/components/WalletModal/components/TokenSelectorModal.tsx"],"names":[],"mappings":"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"}