signer-test-sdk-react 0.0.11 → 0.0.13

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 (91) hide show
  1. package/README.md +1 -1
  2. package/dist/src/AbstraxnProvider.d.ts +2 -5
  3. package/dist/src/AbstraxnProvider.js +550 -50
  4. package/dist/src/AbstraxnProvider.js.map +1 -1
  5. package/dist/src/WalletModal.css +1973 -23
  6. package/dist/src/WalletModal.d.ts +2 -1
  7. package/dist/src/WalletModal.js +200 -30
  8. package/dist/src/WalletModal.js.map +1 -1
  9. package/dist/src/chains.d.ts +55 -0
  10. package/dist/src/chains.js +221 -0
  11. package/dist/src/chains.js.map +1 -0
  12. package/dist/src/components/OnboardingUI/OnboardingUIReact.js +24 -3
  13. package/dist/src/components/OnboardingUI/OnboardingUIReact.js.map +1 -1
  14. package/dist/src/components/OnboardingUI/OnboardingUIWeb.d.ts +11 -2
  15. package/dist/src/components/OnboardingUI/OnboardingUIWeb.js +266 -36
  16. package/dist/src/components/OnboardingUI/OnboardingUIWeb.js.map +1 -1
  17. package/dist/src/components/OnboardingUI/components/PasskeyButton.js +1 -1
  18. package/dist/src/components/OnboardingUI/components/PasskeyButton.js.map +1 -1
  19. package/dist/src/components/QRCode.d.ts +13 -0
  20. package/dist/src/components/QRCode.js +6 -0
  21. package/dist/src/components/QRCode.js.map +1 -0
  22. package/dist/src/components/WalletModal/components/ChainSelector.css +180 -0
  23. package/dist/src/components/WalletModal/components/ChainSelector.d.ts +10 -0
  24. package/dist/src/components/WalletModal/components/ChainSelector.js +34 -0
  25. package/dist/src/components/WalletModal/components/ChainSelector.js.map +1 -0
  26. package/dist/src/components/WalletModal/components/ExportKeyModal.css +133 -0
  27. package/dist/src/components/WalletModal/components/ExportKeyModal.d.ts +9 -0
  28. package/dist/src/components/WalletModal/components/ExportKeyModal.js +31 -0
  29. package/dist/src/components/WalletModal/components/ExportKeyModal.js.map +1 -0
  30. package/dist/src/components/WalletModal/components/ExportWarningModal.css +2 -0
  31. package/dist/src/components/WalletModal/components/ExportWarningModal.d.ts +11 -0
  32. package/dist/src/components/WalletModal/components/ExportWarningModal.js +18 -0
  33. package/dist/src/components/WalletModal/components/ExportWarningModal.js.map +1 -0
  34. package/dist/src/components/WalletModal/components/ManageWalletModal.css +160 -0
  35. package/dist/src/components/WalletModal/components/ManageWalletModal.d.ts +12 -0
  36. package/dist/src/components/WalletModal/components/ManageWalletModal.js +21 -0
  37. package/dist/src/components/WalletModal/components/ManageWalletModal.js.map +1 -0
  38. package/dist/src/components/WalletModal/components/PreviewTransactionModal.css +128 -0
  39. package/dist/src/components/WalletModal/components/PreviewTransactionModal.d.ts +17 -0
  40. package/dist/src/components/WalletModal/components/PreviewTransactionModal.js +10 -0
  41. package/dist/src/components/WalletModal/components/PreviewTransactionModal.js.map +1 -0
  42. package/dist/src/components/WalletModal/components/ReceiveModal.css +101 -0
  43. package/dist/src/components/WalletModal/components/ReceiveModal.d.ts +8 -0
  44. package/dist/src/components/WalletModal/components/ReceiveModal.js +22 -0
  45. package/dist/src/components/WalletModal/components/ReceiveModal.js.map +1 -0
  46. package/dist/src/components/WalletModal/components/SendModal.css +234 -0
  47. package/dist/src/components/WalletModal/components/SendModal.d.ts +18 -0
  48. package/dist/src/components/WalletModal/components/SendModal.js +127 -0
  49. package/dist/src/components/WalletModal/components/SendModal.js.map +1 -0
  50. package/dist/src/components/WalletModal/components/SuccessModal.css +86 -0
  51. package/dist/src/components/WalletModal/components/SuccessModal.d.ts +13 -0
  52. package/dist/src/components/WalletModal/components/SuccessModal.js +8 -0
  53. package/dist/src/components/WalletModal/components/SuccessModal.js.map +1 -0
  54. package/dist/src/components/WalletModal/components/UserAvatar.d.ts +9 -0
  55. package/dist/src/components/WalletModal/components/UserAvatar.js +31 -0
  56. package/dist/src/components/WalletModal/components/UserAvatar.js.map +1 -0
  57. package/dist/src/components/WalletModal/components/index.d.ts +21 -0
  58. package/dist/src/components/WalletModal/components/index.js +13 -0
  59. package/dist/src/components/WalletModal/components/index.js.map +1 -0
  60. package/dist/src/components/WalletModal/hooks/index.d.ts +6 -0
  61. package/dist/src/components/WalletModal/hooks/index.js +7 -0
  62. package/dist/src/components/WalletModal/hooks/index.js.map +1 -0
  63. package/dist/src/components/WalletModal/hooks/useAddressValidation.d.ts +4 -0
  64. package/dist/src/components/WalletModal/hooks/useAddressValidation.js +17 -0
  65. package/dist/src/components/WalletModal/hooks/useAddressValidation.js.map +1 -0
  66. package/dist/src/components/WalletModal/hooks/useAmountValidation.d.ts +4 -0
  67. package/dist/src/components/WalletModal/hooks/useAmountValidation.js +29 -0
  68. package/dist/src/components/WalletModal/hooks/useAmountValidation.js.map +1 -0
  69. package/dist/src/components/WalletModal/hooks/useSendTransaction.d.ts +20 -0
  70. package/dist/src/components/WalletModal/hooks/useSendTransaction.js +55 -0
  71. package/dist/src/components/WalletModal/hooks/useSendTransaction.js.map +1 -0
  72. package/dist/src/components/WalletModal/index.d.ts +5 -0
  73. package/dist/src/components/WalletModal/index.js +7 -0
  74. package/dist/src/components/WalletModal/index.js.map +1 -0
  75. package/dist/src/components/WalletModal/utils/addressUtils.d.ts +19 -0
  76. package/dist/src/components/WalletModal/utils/addressUtils.js +62 -0
  77. package/dist/src/components/WalletModal/utils/addressUtils.js.map +1 -0
  78. package/dist/src/components/WalletModal/utils/formatUtils.d.ts +20 -0
  79. package/dist/src/components/WalletModal/utils/formatUtils.js +47 -0
  80. package/dist/src/components/WalletModal/utils/formatUtils.js.map +1 -0
  81. package/dist/src/components/WalletModal/utils/index.d.ts +5 -0
  82. package/dist/src/components/WalletModal/utils/index.js +6 -0
  83. package/dist/src/components/WalletModal/utils/index.js.map +1 -0
  84. package/dist/src/index.d.ts +2 -1
  85. package/dist/src/index.js +1 -0
  86. package/dist/src/index.js.map +1 -1
  87. package/dist/src/types.d.ts +29 -0
  88. package/dist/src/wagmiConfig.js +6 -2
  89. package/dist/src/wagmiConfig.js.map +1 -1
  90. package/dist/tsconfig.tsbuildinfo +1 -1
  91. package/package.json +8 -8
@@ -0,0 +1,34 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * Chain Selector Component
4
+ */
5
+ import { useState, useEffect } from 'react';
6
+ import './ChainSelector.css';
7
+ export function ChainSelector({ currentChain, availableChains, onChainSelect, theme = 'dark', className = '', }) {
8
+ const [showDropdown, setShowDropdown] = useState(false);
9
+ const [selectedChainType, setSelectedChainType] = useState('evm');
10
+ // Close dropdown when clicking outside
11
+ useEffect(() => {
12
+ if (!showDropdown)
13
+ return;
14
+ const handleClickOutside = (e) => {
15
+ if (e.target instanceof Element) {
16
+ const target = e.target;
17
+ if (!target.closest('.wallet-modal-chain-selector')) {
18
+ setShowDropdown(false);
19
+ }
20
+ }
21
+ };
22
+ document.addEventListener('mousedown', handleClickOutside);
23
+ return () => document.removeEventListener('mousedown', handleClickOutside);
24
+ }, [showDropdown]);
25
+ const evmChains = availableChains.filter((c) => c.type === 'evm');
26
+ const solanaChains = availableChains.filter((c) => c.type === 'solana');
27
+ return (_jsxs("div", { className: `wallet-modal-chain-selector ${className}`, children: [_jsxs("button", { className: "wallet-modal-chain-selector-button", onClick: () => setShowDropdown(!showDropdown), children: [_jsxs("div", { className: "wallet-modal-chain-selector-info", children: [_jsx("div", { className: "wallet-modal-chain-icon", children: _jsxs("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", children: [_jsx("circle", { cx: "10", cy: "10", r: "8", stroke: "currentColor", strokeWidth: "2", fill: "none" }), _jsx("path", { d: "M10 2L10 6M10 14L10 18M2 10L6 10M14 10L18 10", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round" })] }) }), _jsx("span", { className: "wallet-modal-chain-name", children: currentChain?.displayName || 'Select Chain' })] }), _jsx("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", className: showDropdown ? 'open' : '', style: { transform: showDropdown ? 'rotate(180deg)' : 'none', transition: 'transform 0.2s' }, children: _jsx("path", { d: "M4 6L8 10L12 6", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) })] }), showDropdown && availableChains.length > 0 && (_jsxs("div", { className: `wallet-modal-chain-dropdown wallet-modal-theme-${theme}`, children: [_jsxs("div", { className: "wallet-modal-chain-tabs", children: [evmChains.length > 0 && (_jsx("button", { className: `wallet-modal-chain-tab ${selectedChainType === 'evm' ? 'active' : ''}`, onClick: () => setSelectedChainType('evm'), children: "EVM" })), solanaChains.length > 0 && (_jsx("button", { className: `wallet-modal-chain-tab ${selectedChainType === 'solana' ? 'active' : ''}`, onClick: () => setSelectedChainType('solana'), children: "Solana" }))] }), _jsx("div", { className: "wallet-modal-chain-list", children: availableChains
28
+ .filter((chain) => chain.type === selectedChainType)
29
+ .map((chain) => (_jsxs("button", { className: `wallet-modal-chain-item ${currentChain?.id === chain.id ? 'active' : ''}`, onClick: () => {
30
+ onChainSelect(chain.id);
31
+ setShowDropdown(false);
32
+ }, children: [_jsx("div", { className: "wallet-modal-chain-icon", children: _jsxs("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", children: [_jsx("circle", { cx: "10", cy: "10", r: "8", stroke: "currentColor", strokeWidth: "2", fill: "none" }), _jsx("path", { d: "M10 2L10 6M10 14L10 18M2 10L6 10M14 10L18 10", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round" })] }) }), _jsxs("div", { className: "wallet-modal-chain-info", children: [_jsx("span", { className: "wallet-modal-chain-name", children: chain.displayName }), chain.isTestnet && (_jsx("span", { className: "wallet-modal-chain-badge", children: "Testnet" }))] }), currentChain?.id === chain.id && (_jsx("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", children: _jsx("path", { d: "M13.5 4L6 11.5L2.5 8", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }))] }, chain.id))) })] }))] }));
33
+ }
34
+ //# sourceMappingURL=ChainSelector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChainSelector.js","sourceRoot":"","sources":["../../../../../src/components/WalletModal/components/ChainSelector.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,133 @@
1
+ /* Export Key Modal Styles - extracted from WalletModal.css */
2
+ .wallet-modal-export-header {
3
+ display: flex;
4
+ align-items: center;
5
+ justify-content: space-between;
6
+ margin-bottom: 24px;
7
+ }
8
+
9
+ .wallet-modal-export-title {
10
+ font-size: 20px;
11
+ font-weight: 600;
12
+ margin: 0;
13
+ }
14
+
15
+ .wallet-modal-theme-dark .wallet-modal-export-title {
16
+ color: #ffffff;
17
+ }
18
+
19
+ .wallet-modal-theme-light .wallet-modal-export-title {
20
+ color: #111827;
21
+ }
22
+
23
+ .wallet-modal-export-content {
24
+ display: flex;
25
+ flex-direction: column;
26
+ gap: 20px;
27
+ }
28
+
29
+ .wallet-modal-export-key-display {
30
+ padding: 16px;
31
+ border-radius: 12px;
32
+ border: 1px solid;
33
+ font-family: monospace;
34
+ font-size: 12px;
35
+ word-break: break-all;
36
+ min-height: 100px;
37
+ max-height: 200px;
38
+ overflow-y: auto;
39
+ transition: all 0.3s;
40
+ }
41
+
42
+ .wallet-modal-theme-dark .wallet-modal-export-key-display {
43
+ background: #2a2a2a;
44
+ border-color: #3a3a3a;
45
+ color: #ffffff;
46
+ }
47
+
48
+ .wallet-modal-theme-light .wallet-modal-export-key-display {
49
+ background: #f9fafb;
50
+ border-color: #e5e7eb;
51
+ color: #111827;
52
+ }
53
+
54
+ .wallet-modal-export-key-display.blurred {
55
+ filter: blur(8px);
56
+ user-select: none;
57
+ cursor: pointer;
58
+ }
59
+
60
+ .wallet-modal-export-key-hint {
61
+ font-size: 12px;
62
+ text-align: center;
63
+ opacity: 0.7;
64
+ margin: 0;
65
+ }
66
+
67
+ .wallet-modal-theme-dark .wallet-modal-export-key-hint {
68
+ color: #9ca3af;
69
+ }
70
+
71
+ .wallet-modal-theme-light .wallet-modal-export-key-hint {
72
+ color: #6b7280;
73
+ }
74
+
75
+ .wallet-modal-export-copy-btn {
76
+ width: 100%;
77
+ padding: 12px 24px;
78
+ border-radius: 10px;
79
+ border: 1px solid;
80
+ background: transparent;
81
+ cursor: pointer;
82
+ transition: all 0.2s;
83
+ display: flex;
84
+ align-items: center;
85
+ justify-content: center;
86
+ gap: 8px;
87
+ font-size: 14px;
88
+ font-weight: 500;
89
+ }
90
+
91
+ .wallet-modal-theme-dark .wallet-modal-export-copy-btn {
92
+ border-color: #3a3a3a;
93
+ color: #ffffff;
94
+ }
95
+
96
+ .wallet-modal-theme-light .wallet-modal-export-copy-btn {
97
+ border-color: #e5e7eb;
98
+ color: #111827;
99
+ }
100
+
101
+ .wallet-modal-theme-dark .wallet-modal-export-copy-btn:hover:not(:disabled) {
102
+ background: #2a2a2a;
103
+ border-color: #4a4a4a;
104
+ }
105
+
106
+ .wallet-modal-theme-light .wallet-modal-export-copy-btn:hover:not(:disabled) {
107
+ background: #f3f4f6;
108
+ border-color: #d1d5db;
109
+ }
110
+
111
+ .wallet-modal-export-copy-btn:disabled {
112
+ opacity: 0.5;
113
+ cursor: not-allowed;
114
+ }
115
+
116
+ .wallet-modal-export-done-btn {
117
+ width: 100%;
118
+ padding: 14px 24px;
119
+ border-radius: 12px;
120
+ border: none;
121
+ font-size: 16px;
122
+ font-weight: 600;
123
+ cursor: pointer;
124
+ transition: all 0.2s;
125
+ background: linear-gradient(135deg, #9333ea 0%, #7e22ce 100%);
126
+ color: #ffffff;
127
+ }
128
+
129
+ .wallet-modal-export-done-btn:hover {
130
+ background: linear-gradient(135deg, #a855f7 0%, #9333ea 100%);
131
+ transform: translateY(-1px);
132
+ box-shadow: 0 4px 12px rgba(147, 51, 234, 0.3);
133
+ }
@@ -0,0 +1,9 @@
1
+ import './ExportKeyModal.css';
2
+ import '../../../WalletModal.css';
3
+ export interface ExportKeyModalProps {
4
+ isOpen: boolean;
5
+ onClose: () => void;
6
+ privateKey: string;
7
+ theme?: 'light' | 'dark';
8
+ }
9
+ export declare function ExportKeyModal({ isOpen, onClose, privateKey, theme, }: ExportKeyModalProps): import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,31 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ /**
3
+ * Export Key Modal Component
4
+ */
5
+ import { useState, useCallback } from 'react';
6
+ import './ExportKeyModal.css';
7
+ import '../../../WalletModal.css';
8
+ export function ExportKeyModal({ isOpen, onClose, privateKey, theme = 'dark', }) {
9
+ const [showPrivateKey, setShowPrivateKey] = useState(false);
10
+ const [copied, setCopied] = useState(false);
11
+ const handleCopy = useCallback(() => {
12
+ if (privateKey && showPrivateKey) {
13
+ navigator.clipboard.writeText(privateKey);
14
+ setCopied(true);
15
+ setTimeout(() => setCopied(false), 2000);
16
+ }
17
+ }, [privateKey, showPrivateKey]);
18
+ const handleClose = useCallback(() => {
19
+ setShowPrivateKey(false);
20
+ setCopied(false);
21
+ onClose();
22
+ }, [onClose]);
23
+ if (!isOpen)
24
+ return null;
25
+ return (_jsx("div", { className: `wallet-modal-overlay wallet-modal-theme-${theme}`, onClick: handleClose, children: _jsxs("div", { className: `wallet-modal-content wallet-modal-theme-${theme} wallet-modal-export-key`, onClick: (e) => e.stopPropagation(), children: [_jsxs("div", { className: "wallet-modal-export-header", children: [_jsx("h2", { className: "wallet-modal-export-title", children: "Export Key" }), _jsx("button", { className: "wallet-modal-close", onClick: handleClose, "aria-label": "Close", children: _jsx("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", children: _jsx("path", { d: "M18 6L6 18M6 6L18 18", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }) })] }), _jsxs("div", { className: "wallet-modal-export-content", children: [_jsx("div", { className: `wallet-modal-export-key-display ${!showPrivateKey ? 'blurred' : ''}`, onClick: () => {
26
+ if (!showPrivateKey) {
27
+ setShowPrivateKey(true);
28
+ }
29
+ }, style: { cursor: showPrivateKey ? 'text' : 'pointer' }, children: privateKey }), !showPrivateKey && (_jsx("p", { className: "wallet-modal-export-key-hint", children: "Click to reveal private key" })), _jsx("button", { className: "wallet-modal-export-copy-btn", onClick: handleCopy, disabled: !showPrivateKey, children: copied ? (_jsxs(_Fragment, { children: [_jsx("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", children: _jsx("path", { d: "M13.5 4L6 11.5L2.5 8", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }), _jsx("span", { children: "Copied!" })] })) : (_jsxs(_Fragment, { children: [_jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", children: [_jsx("path", { d: "M5.5 3.5H3.5C2.67157 3.5 2 4.17157 2 5V12.5C2 13.3284 2.67157 14 3.5 14H11C11.8284 14 12.5 13.3284 12.5 12.5V10.5", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M5.5 3.5C5.5 2.67157 6.17157 2 7 2H12.5C13.3284 2 14 2.67157 14 3.5V9C14 9.82843 13.3284 10.5 12.5 10.5H7C6.17157 10.5 5.5 9.82843 5.5 9V3.5Z", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" })] }), _jsx("span", { children: "Copy" })] })) }), _jsx("button", { className: `wallet-modal-export-done-btn wallet-modal-theme-${theme}`, onClick: handleClose, children: "I'm Done" })] })] }) }));
30
+ }
31
+ //# sourceMappingURL=ExportKeyModal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExportKeyModal.js","sourceRoot":"","sources":["../../../../../src/components/WalletModal/components/ExportKeyModal.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ /* Export Warning Modal Styles - extracted from WalletModal.css */
2
+ /* Styles are already in main WalletModal.css, this file is for organization */
@@ -0,0 +1,11 @@
1
+ import type { ChainData } from '../../../chains';
2
+ import '../../../WalletModal.css';
3
+ export interface ExportWarningModalProps {
4
+ isOpen: boolean;
5
+ onClose: () => void;
6
+ onAcknowledge: (acknowledged: boolean) => void;
7
+ currentChain: ChainData | null;
8
+ isExporting: boolean;
9
+ theme?: 'light' | 'dark';
10
+ }
11
+ export declare function ExportWarningModal({ isOpen, onClose, onAcknowledge, currentChain, isExporting, theme, }: ExportWarningModalProps): import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,18 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ /**
3
+ * Export Warning Modal Component
4
+ */
5
+ import { useState } from 'react';
6
+ import '../../../WalletModal.css';
7
+ export function ExportWarningModal({ isOpen, onClose, onAcknowledge, currentChain, isExporting, theme = 'dark', }) {
8
+ const [acknowledged, setAcknowledged] = useState(false);
9
+ const handleReveal = () => {
10
+ if (acknowledged && !isExporting) {
11
+ onAcknowledge(true);
12
+ }
13
+ };
14
+ if (!isOpen)
15
+ return null;
16
+ 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-export-warning`, onClick: (e) => e.stopPropagation(), children: [_jsxs("div", { className: "wallet-modal-receive-header", children: [_jsx("button", { className: "wallet-modal-back", onClick: onClose, disabled: isExporting, 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-receive-title", children: "Agree to continue" }), _jsx("button", { className: "wallet-modal-close", onClick: onClose, "aria-label": "Close", disabled: isExporting, children: _jsx("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", children: _jsx("path", { d: "M18 6L6 18M6 6L18 18", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }) })] }), _jsxs("div", { className: "wallet-modal-export-warning-content", children: [_jsx("div", { className: "wallet-modal-export-warning-illustration", children: _jsx("div", { className: "wallet-modal-export-warning-icon-bg", children: _jsxs("svg", { width: "48", height: "48", viewBox: "0 0 48 48", fill: "none", children: [_jsx("path", { d: "M24 12L12 18L24 24L36 18L24 12Z", fill: "currentColor" }), _jsx("path", { d: "M12 30L24 36L36 30M12 24L24 30L36 24", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" })] }) }) }), _jsx("div", { className: "wallet-modal-export-warning-badge", children: "Sensitive information" }), _jsxs("h3", { className: "wallet-modal-export-warning-heading", children: ["Your ", currentChain?.type === 'solana' ? 'Solana' : 'EVM', " wallet is ready. Back up your key to protect your assets."] }), _jsxs("div", { className: "wallet-modal-export-warning-info-cards", children: [_jsxs("div", { className: "wallet-modal-export-warning-info-card", children: [_jsxs("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", children: [_jsx("path", { d: "M3 6C3 4.89543 3.89543 4 5 4H15C16.1046 4 17 4.89543 17 6V16C17 17.1046 16.1046 18 15 18H5C3.89543 18 3 17.1046 3 16V6Z", stroke: "currentColor", strokeWidth: "2" }), _jsx("path", { d: "M7 8H13M7 12H13", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round" })] }), _jsx("span", { children: "Non-custodial wallet: You're always in control" })] }), _jsxs("div", { className: "wallet-modal-export-warning-info-card", children: [_jsxs("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", children: [_jsx("path", { d: "M10 2L2 6L10 10L18 6L10 2Z", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M2 14L10 18L18 14M2 10L10 14L18 10", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M10 10V18", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" })] }), _jsx("span", { children: "Keep your key private. It controls your account and assets." })] })] }), _jsxs("label", { className: "wallet-modal-export-warning-checkbox", children: [_jsx("input", { type: "checkbox", checked: acknowledged, onChange: (e) => setAcknowledged(e.target.checked), className: "wallet-modal-export-warning-checkbox-input" }), _jsx("span", { children: "I am responsible for safeguarding and using my wallet key information." })] }), _jsx("button", { className: `wallet-modal-export-warning-reveal ${!acknowledged || isExporting ? 'disabled' : ''}`, onClick: handleReveal, disabled: !acknowledged || isExporting, children: isExporting ? (_jsxs(_Fragment, { children: [_jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", className: "wallet-modal-loading-spinner", children: [_jsx("circle", { cx: "8", cy: "8", r: "6", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeDasharray: "37.7", strokeDashoffset: "37.7", fill: "none", opacity: "0.3" }), _jsx("circle", { cx: "8", cy: "8", r: "6", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeDasharray: "37.7", fill: "none", children: _jsx("animate", { attributeName: "stroke-dashoffset", from: "37.7", to: "0", dur: "1s", repeatCount: "indefinite" }) })] }), _jsx("span", { children: "Loading..." })] })) : ('Reveal') })] })] }) }));
17
+ }
18
+ //# sourceMappingURL=ExportWarningModal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExportWarningModal.js","sourceRoot":"","sources":["../../../../../src/components/WalletModal/components/ExportWarningModal.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,160 @@
1
+ /* Manage Wallet Modal Styles - extracted from WalletModal.css */
2
+ .wallet-modal-manage-content {
3
+ padding: 20px 0;
4
+ display: flex;
5
+ flex-direction: column;
6
+ gap: 24px;
7
+ }
8
+
9
+ .wallet-modal-manage-section {
10
+ display: flex;
11
+ flex-direction: column;
12
+ gap: 16px;
13
+ }
14
+
15
+ .wallet-modal-manage-section-title {
16
+ font-size: 16px;
17
+ font-weight: 600;
18
+ margin: 0;
19
+ }
20
+
21
+ .wallet-modal-theme-dark .wallet-modal-manage-section-title {
22
+ color: #ffffff;
23
+ }
24
+
25
+ .wallet-modal-theme-light .wallet-modal-manage-section-title {
26
+ color: #111827;
27
+ }
28
+
29
+ .wallet-modal-manage-item {
30
+ display: flex;
31
+ flex-direction: column;
32
+ gap: 8px;
33
+ }
34
+
35
+ .wallet-modal-manage-label {
36
+ font-size: 12px;
37
+ opacity: 0.7;
38
+ }
39
+
40
+ .wallet-modal-theme-dark .wallet-modal-manage-label {
41
+ color: #9ca3af;
42
+ }
43
+
44
+ .wallet-modal-theme-light .wallet-modal-manage-label {
45
+ color: #6b7280;
46
+ }
47
+
48
+ .wallet-modal-manage-value {
49
+ font-size: 14px;
50
+ font-weight: 500;
51
+ display: flex;
52
+ align-items: center;
53
+ gap: 8px;
54
+ }
55
+
56
+ .wallet-modal-theme-dark .wallet-modal-manage-value {
57
+ color: #ffffff;
58
+ }
59
+
60
+ .wallet-modal-theme-light .wallet-modal-manage-value {
61
+ color: #111827;
62
+ }
63
+
64
+ .wallet-modal-manage-address-text {
65
+ font-family: monospace;
66
+ flex: 1;
67
+ min-width: 0;
68
+ }
69
+
70
+ .wallet-modal-manage-copy-btn {
71
+ padding: 6px 12px;
72
+ border-radius: 6px;
73
+ border: none;
74
+ background: transparent;
75
+ cursor: pointer;
76
+ transition: all 0.2s;
77
+ display: flex;
78
+ align-items: center;
79
+ gap: 6px;
80
+ font-size: 12px;
81
+ flex-shrink: 0;
82
+ }
83
+
84
+ .wallet-modal-theme-dark .wallet-modal-manage-copy-btn {
85
+ color: #9ca3af;
86
+ }
87
+
88
+ .wallet-modal-theme-light .wallet-modal-manage-copy-btn {
89
+ color: #6b7280;
90
+ }
91
+
92
+ .wallet-modal-theme-dark .wallet-modal-manage-copy-btn:hover {
93
+ background: #2a2a2a;
94
+ color: #ffffff;
95
+ }
96
+
97
+ .wallet-modal-theme-light .wallet-modal-manage-copy-btn:hover {
98
+ background: #f3f4f6;
99
+ color: #111827;
100
+ }
101
+
102
+ .wallet-modal-manage-copy-btn.copied {
103
+ color: #10b981;
104
+ }
105
+
106
+ .wallet-modal-manage-action-item {
107
+ width: 100%;
108
+ padding: 14px 16px;
109
+ border-radius: 10px;
110
+ border: 1px solid;
111
+ background: transparent;
112
+ cursor: pointer;
113
+ transition: all 0.2s;
114
+ display: flex;
115
+ align-items: center;
116
+ gap: 12px;
117
+ text-align: left;
118
+ }
119
+
120
+ .wallet-modal-theme-dark .wallet-modal-manage-action-item {
121
+ border-color: #3a3a3a;
122
+ background: #2a2a2a;
123
+ color: #ffffff;
124
+ }
125
+
126
+ .wallet-modal-theme-light .wallet-modal-manage-action-item {
127
+ border-color: #e5e7eb;
128
+ background: #f9fafb;
129
+ color: #111827;
130
+ }
131
+
132
+ .wallet-modal-theme-dark .wallet-modal-manage-action-item:hover {
133
+ background: #3a3a3a;
134
+ border-color: #4a4a4a;
135
+ }
136
+
137
+ .wallet-modal-theme-light .wallet-modal-manage-action-item:hover {
138
+ background: #f3f4f6;
139
+ border-color: #d1d5db;
140
+ }
141
+
142
+ .wallet-modal-manage-action-icon {
143
+ width: 20px;
144
+ height: 20px;
145
+ flex-shrink: 0;
146
+ display: flex;
147
+ align-items: center;
148
+ justify-content: center;
149
+ }
150
+
151
+ .wallet-modal-manage-action-label {
152
+ flex: 1;
153
+ font-size: 14px;
154
+ font-weight: 500;
155
+ }
156
+
157
+ .wallet-modal-manage-action-arrow {
158
+ flex-shrink: 0;
159
+ opacity: 0.5;
160
+ }
@@ -0,0 +1,12 @@
1
+ import './ManageWalletModal.css';
2
+ export interface ManageWalletModalProps {
3
+ isOpen: boolean;
4
+ onClose: () => void;
5
+ displayAddress: string | null;
6
+ userEmail?: string | null;
7
+ organizationName?: string | null;
8
+ isExternalWalletConnected: boolean;
9
+ onExportPrivateKey: () => void;
10
+ theme?: 'light' | 'dark';
11
+ }
12
+ export declare function ManageWalletModal({ isOpen, onClose, displayAddress, userEmail, organizationName, isExternalWalletConnected, onExportPrivateKey, theme, }: ManageWalletModalProps): import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,21 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ /**
3
+ * Manage Wallet Modal Component
4
+ */
5
+ import { useState, useCallback } from 'react';
6
+ import { formatAddress } from '../utils/formatUtils';
7
+ import './ManageWalletModal.css';
8
+ export function ManageWalletModal({ isOpen, onClose, displayAddress, userEmail, organizationName, isExternalWalletConnected, onExportPrivateKey, theme = 'dark', }) {
9
+ const [copied, setCopied] = useState(false);
10
+ const handleCopy = useCallback(() => {
11
+ if (displayAddress) {
12
+ navigator.clipboard.writeText(displayAddress);
13
+ setCopied(true);
14
+ setTimeout(() => setCopied(false), 2000);
15
+ }
16
+ }, [displayAddress]);
17
+ if (!isOpen)
18
+ return null;
19
+ 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-manage`, onClick: (e) => e.stopPropagation(), children: [_jsxs("div", { className: "wallet-modal-receive-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-receive-title", children: "Account & Settings" }), _jsx("div", { style: { width: '40px' } })] }), _jsxs("div", { className: "wallet-modal-manage-content", children: [_jsxs("div", { className: "wallet-modal-manage-section", children: [_jsx("h3", { className: "wallet-modal-manage-section-title", children: "Wallet Information" }), _jsxs("div", { className: "wallet-modal-manage-item", children: [_jsx("span", { className: "wallet-modal-manage-label", children: "Address" }), _jsxs("div", { className: "wallet-modal-manage-value", children: [_jsx("span", { className: "wallet-modal-manage-address-text", children: formatAddress(displayAddress) }), _jsx("button", { className: `wallet-modal-manage-copy-btn ${copied ? 'copied' : ''}`, onClick: handleCopy, children: copied ? (_jsxs(_Fragment, { children: [_jsx("svg", { width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", children: _jsx("path", { d: "M11.5 3.5L5.5 9.5L2.5 6.5", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }), _jsx("span", { children: "Copied!" })] })) : (_jsxs("svg", { width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", children: [_jsx("path", { d: "M4.5 3H2.5C1.67157 3 1 3.67157 1 4.5V11C1 11.8284 1.67157 12.5 2.5 12.5H9C9.82843 12.5 10.5 11.8284 10.5 11V9", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M4.5 3C4.5 2.17157 5.17157 1.5 6 1.5H11.5C12.3284 1.5 13 2.17157 13 3V7.5C13 8.32843 12.3284 9 11.5 9H6C5.17157 9 4.5 8.32843 4.5 7.5V3Z", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" })] })) })] })] }), userEmail && (_jsxs("div", { className: "wallet-modal-manage-item", children: [_jsx("span", { className: "wallet-modal-manage-label", children: "Email" }), _jsx("span", { className: "wallet-modal-manage-value", children: userEmail })] })), organizationName && (_jsxs("div", { className: "wallet-modal-manage-item", children: [_jsx("span", { className: "wallet-modal-manage-label", children: "Organization" }), _jsx("span", { className: "wallet-modal-manage-value", children: organizationName })] }))] }), !isExternalWalletConnected && (_jsxs("div", { className: "wallet-modal-manage-section", children: [_jsx("h3", { className: "wallet-modal-manage-section-title", children: "Export & Backup" }), _jsxs("button", { className: "wallet-modal-manage-action-item", onClick: onExportPrivateKey, children: [_jsx("div", { className: "wallet-modal-manage-action-icon", children: _jsxs("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", children: [_jsx("path", { d: "M10 2L2 6L10 10L18 6L10 2Z", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M2 14L10 18L18 14M2 10L10 14L18 10", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M10 10V18", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" })] }) }), _jsx("span", { className: "wallet-modal-manage-action-label", children: "Export Private Key" }), _jsx("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", className: "wallet-modal-manage-action-arrow", children: _jsx("path", { d: "M6 12L10 8L6 4", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) })] })] }))] })] }) }));
20
+ }
21
+ //# sourceMappingURL=ManageWalletModal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ManageWalletModal.js","sourceRoot":"","sources":["../../../../../src/components/WalletModal/components/ManageWalletModal.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,128 @@
1
+ /* Preview Transaction Modal Styles */
2
+ .wallet-modal-preview-content {
3
+ padding: 20px 0;
4
+ display: flex;
5
+ flex-direction: column;
6
+ gap: 24px;
7
+ }
8
+
9
+ .wallet-modal-preview-section {
10
+ display: flex;
11
+ flex-direction: column;
12
+ gap: 16px;
13
+ padding: 20px;
14
+ border-radius: 12px;
15
+ border: 1px solid;
16
+ }
17
+
18
+ .wallet-modal-theme-dark .wallet-modal-preview-section {
19
+ background: #2a2a2a;
20
+ border-color: #3a3a3a;
21
+ }
22
+
23
+ .wallet-modal-theme-light .wallet-modal-preview-section {
24
+ background: #f9fafb;
25
+ border-color: #e5e7eb;
26
+ }
27
+
28
+ .wallet-modal-preview-item {
29
+ display: flex;
30
+ flex-direction: column;
31
+ gap: 4px;
32
+ }
33
+
34
+ .wallet-modal-preview-label {
35
+ font-size: 12px;
36
+ opacity: 0.7;
37
+ text-align: left;
38
+ }
39
+
40
+ .wallet-modal-preview-value {
41
+ font-size: 14px;
42
+ font-weight: 500;
43
+ word-break: break-all;
44
+ text-align: left;
45
+ }
46
+
47
+ .wallet-modal-theme-dark .wallet-modal-preview-label,
48
+ .wallet-modal-theme-dark .wallet-modal-preview-value {
49
+ color: #ffffff;
50
+ }
51
+
52
+ .wallet-modal-theme-light .wallet-modal-preview-label,
53
+ .wallet-modal-theme-light .wallet-modal-preview-value {
54
+ color: #111827;
55
+ }
56
+
57
+ .wallet-modal-preview-actions {
58
+ display: flex;
59
+ flex-direction: column;
60
+ gap: 12px;
61
+ }
62
+
63
+ .wallet-modal-preview-btn {
64
+ width: 100%;
65
+ padding: 14px 24px;
66
+ border-radius: 12px;
67
+ border: none;
68
+ font-size: 16px;
69
+ font-weight: 600;
70
+ cursor: pointer;
71
+ transition: all 0.2s;
72
+ display: flex;
73
+ align-items: center;
74
+ justify-content: center;
75
+ gap: 8px;
76
+ }
77
+
78
+ .wallet-modal-preview-btn:disabled {
79
+ opacity: 0.5;
80
+ cursor: not-allowed;
81
+ }
82
+
83
+ .wallet-modal-preview-btn-primary {
84
+ background: linear-gradient(135deg, #9333ea 0%, #7e22ce 100%);
85
+ color: #ffffff;
86
+ }
87
+
88
+ .wallet-modal-preview-btn-primary:hover:not(:disabled) {
89
+ background: linear-gradient(135deg, #a855f7 0%, #9333ea 100%);
90
+ transform: translateY(-1px);
91
+ box-shadow: 0 4px 12px rgba(147, 51, 234, 0.3);
92
+ }
93
+
94
+ .wallet-modal-preview-btn-secondary {
95
+ background: transparent;
96
+ border: 1px solid;
97
+ }
98
+
99
+ .wallet-modal-theme-dark .wallet-modal-preview-btn-secondary {
100
+ border-color: #3a3a3a;
101
+ color: #ffffff;
102
+ }
103
+
104
+ .wallet-modal-theme-light .wallet-modal-preview-btn-secondary {
105
+ border-color: #e5e7eb;
106
+ color: #111827;
107
+ }
108
+
109
+ .wallet-modal-theme-dark .wallet-modal-preview-btn-secondary:hover:not(:disabled) {
110
+ background: #3a3a3a;
111
+ }
112
+
113
+ .wallet-modal-theme-light .wallet-modal-preview-btn-secondary:hover:not(:disabled) {
114
+ background: #f3f4f6;
115
+ }
116
+
117
+ .wallet-modal-loading-spinner {
118
+ animation: spin 1s linear infinite;
119
+ }
120
+
121
+ @keyframes spin {
122
+ from {
123
+ transform: rotate(0deg);
124
+ }
125
+ to {
126
+ transform: rotate(360deg);
127
+ }
128
+ }
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Preview Transaction Modal Component
3
+ */
4
+ import type { ChainData } from '../../../chains';
5
+ import './PreviewTransactionModal.css';
6
+ export interface PreviewTransactionModalProps {
7
+ isOpen: boolean;
8
+ onClose: () => void;
9
+ onConfirm: () => void;
10
+ recipientAddress: string;
11
+ amount: string;
12
+ displayAddress: string | null;
13
+ currentChain: ChainData | null;
14
+ isSending: boolean;
15
+ theme?: 'light' | 'dark';
16
+ }
17
+ export declare function PreviewTransactionModal({ isOpen, onClose, onConfirm, recipientAddress, amount, displayAddress, currentChain, isSending, theme, }: PreviewTransactionModalProps): import("react/jsx-runtime").JSX.Element | null;