@turnkey/react-wallet-kit 2.0.1 → 2.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.
- package/dist/components/auth/index.d.ts.map +1 -1
- package/dist/components/auth/index.js +7 -57
- package/dist/components/auth/index.js.map +1 -1
- package/dist/components/auth/index.mjs +16 -132
- package/dist/components/auth/index.mjs.map +1 -1
- package/dist/components/auth/wallet/DesktopWalletConnectScreen.d.ts +10 -0
- package/dist/components/auth/wallet/DesktopWalletConnectScreen.d.ts.map +1 -0
- package/dist/components/auth/wallet/DesktopWalletConnectScreen.js +204 -0
- package/dist/components/auth/wallet/DesktopWalletConnectScreen.js.map +1 -0
- package/dist/components/auth/wallet/DesktopWalletConnectScreen.mjs +253 -0
- package/dist/components/auth/wallet/DesktopWalletConnectScreen.mjs.map +1 -0
- package/dist/components/auth/wallet/DisconnectWalletScreen.d.ts +8 -0
- package/dist/components/auth/wallet/DisconnectWalletScreen.d.ts.map +1 -0
- package/dist/components/auth/wallet/DisconnectWalletScreen.js +58 -0
- package/dist/components/auth/wallet/DisconnectWalletScreen.js.map +1 -0
- package/dist/components/auth/wallet/DisconnectWalletScreen.mjs +80 -0
- package/dist/components/auth/wallet/DisconnectWalletScreen.mjs.map +1 -0
- package/dist/components/auth/wallet/ExternalWalletChainSelector.d.ts +10 -0
- package/dist/components/auth/wallet/ExternalWalletChainSelector.d.ts.map +1 -0
- package/dist/components/auth/wallet/ExternalWalletChainSelector.js +115 -0
- package/dist/components/auth/wallet/ExternalWalletChainSelector.js.map +1 -0
- package/dist/components/auth/wallet/ExternalWalletChainSelector.mjs +149 -0
- package/dist/components/auth/wallet/ExternalWalletChainSelector.mjs.map +1 -0
- package/dist/components/auth/wallet/ExternalWalletSelector.d.ts +18 -0
- package/dist/components/auth/wallet/ExternalWalletSelector.d.ts.map +1 -0
- package/dist/components/auth/wallet/ExternalWalletSelector.js +233 -0
- package/dist/components/auth/wallet/ExternalWalletSelector.js.map +1 -0
- package/dist/components/auth/wallet/ExternalWalletSelector.mjs +323 -0
- package/dist/components/auth/wallet/ExternalWalletSelector.mjs.map +1 -0
- package/dist/components/auth/wallet/MobileWalletConnectScreen.d.ts +11 -0
- package/dist/components/auth/wallet/MobileWalletConnectScreen.d.ts.map +1 -0
- package/dist/components/auth/wallet/MobileWalletConnectScreen.js +200 -0
- package/dist/components/auth/wallet/MobileWalletConnectScreen.js.map +1 -0
- package/dist/components/auth/wallet/MobileWalletConnectScreen.mjs +251 -0
- package/dist/components/auth/wallet/MobileWalletConnectScreen.mjs.map +1 -0
- package/dist/components/auth/wallet/QRCodeDisplay.d.ts +8 -0
- package/dist/components/auth/wallet/QRCodeDisplay.d.ts.map +1 -0
- package/dist/components/auth/wallet/QRCodeDisplay.js +37 -0
- package/dist/components/auth/wallet/QRCodeDisplay.js.map +1 -0
- package/dist/components/auth/wallet/QRCodeDisplay.mjs +33 -0
- package/dist/components/auth/wallet/QRCodeDisplay.mjs.map +1 -0
- package/dist/components/auth/wallet/ShowAllWalletsScreen.d.ts +8 -0
- package/dist/components/auth/wallet/ShowAllWalletsScreen.d.ts.map +1 -0
- package/dist/components/auth/wallet/ShowAllWalletsScreen.js +253 -0
- package/dist/components/auth/wallet/ShowAllWalletsScreen.js.map +1 -0
- package/dist/components/auth/wallet/ShowAllWalletsScreen.mjs +299 -0
- package/dist/components/auth/wallet/ShowAllWalletsScreen.mjs.map +1 -0
- package/dist/components/auth/wallet/WalletAuthButton.d.ts +6 -0
- package/dist/components/auth/wallet/WalletAuthButton.d.ts.map +1 -0
- package/dist/components/auth/wallet/WalletAuthButton.js +33 -0
- package/dist/components/auth/wallet/WalletAuthButton.js.map +1 -0
- package/dist/components/auth/wallet/WalletAuthButton.mjs +47 -0
- package/dist/components/auth/wallet/WalletAuthButton.mjs.map +1 -0
- package/dist/components/auth/wallet/WalletButton.d.ts +16 -0
- package/dist/components/auth/wallet/WalletButton.d.ts.map +1 -0
- package/dist/components/auth/wallet/WalletButton.js +79 -0
- package/dist/components/auth/wallet/WalletButton.js.map +1 -0
- package/dist/components/auth/wallet/WalletButton.mjs +84 -0
- package/dist/components/auth/wallet/WalletButton.mjs.map +1 -0
- package/dist/components/auth/wallet/WalletButtonSkeleton.d.ts +2 -0
- package/dist/components/auth/wallet/WalletButtonSkeleton.d.ts.map +1 -0
- package/dist/components/auth/wallet/WalletButtonSkeleton.js +22 -0
- package/dist/components/auth/wallet/WalletButtonSkeleton.js.map +1 -0
- package/dist/components/auth/wallet/WalletButtonSkeleton.mjs +20 -0
- package/dist/components/auth/wallet/WalletButtonSkeleton.mjs.map +1 -0
- package/dist/components/auth/wallet/WalletConnectAppChainSelector.d.ts +12 -0
- package/dist/components/auth/wallet/WalletConnectAppChainSelector.d.ts.map +1 -0
- package/dist/components/auth/wallet/WalletConnectAppChainSelector.js +79 -0
- package/dist/components/auth/wallet/WalletConnectAppChainSelector.js.map +1 -0
- package/dist/components/auth/wallet/WalletConnectAppChainSelector.mjs +102 -0
- package/dist/components/auth/wallet/WalletConnectAppChainSelector.mjs.map +1 -0
- package/dist/components/auth/wallet/WalletConnectFlow.d.ts +21 -0
- package/dist/components/auth/wallet/WalletConnectFlow.d.ts.map +1 -0
- package/dist/components/auth/wallet/WalletConnectFlow.js +163 -0
- package/dist/components/auth/wallet/WalletConnectFlow.js.map +1 -0
- package/dist/components/auth/wallet/WalletConnectFlow.mjs +310 -0
- package/dist/components/auth/wallet/WalletConnectFlow.mjs.map +1 -0
- package/dist/components/auth/wallet/constants.d.ts +6 -0
- package/dist/components/auth/wallet/constants.d.ts.map +1 -0
- package/dist/components/auth/wallet/constants.js +14 -0
- package/dist/components/auth/wallet/constants.js.map +1 -0
- package/dist/components/auth/wallet/constants.mjs +8 -0
- package/dist/components/auth/wallet/constants.mjs.map +1 -0
- package/dist/components/auth/wallet/utils.d.ts +4 -0
- package/dist/components/auth/wallet/utils.d.ts.map +1 -0
- package/dist/components/auth/wallet/utils.js +9 -0
- package/dist/components/auth/wallet/utils.js.map +1 -0
- package/dist/components/auth/wallet/utils.mjs +7 -0
- package/dist/components/auth/wallet/utils.mjs.map +1 -0
- package/dist/components/design/Buttons.d.ts +1 -0
- package/dist/components/design/Buttons.d.ts.map +1 -1
- package/dist/components/design/Buttons.js +2 -0
- package/dist/components/design/Buttons.js.map +1 -1
- package/dist/components/design/Buttons.mjs +2 -0
- package/dist/components/design/Buttons.mjs.map +1 -1
- package/dist/components/design/ConnectedIndicator.d.ts +6 -0
- package/dist/components/design/ConnectedIndicator.d.ts.map +1 -0
- package/dist/components/design/ConnectedIndicator.js +20 -0
- package/dist/components/design/ConnectedIndicator.js.map +1 -0
- package/dist/components/design/ConnectedIndicator.mjs +17 -0
- package/dist/components/design/ConnectedIndicator.mjs.map +1 -0
- package/dist/components/design/Inputs.d.ts +7 -0
- package/dist/components/design/Inputs.d.ts.map +1 -1
- package/dist/components/design/Inputs.js +37 -0
- package/dist/components/design/Inputs.js.map +1 -1
- package/dist/components/design/Inputs.mjs +39 -2
- package/dist/components/design/Inputs.mjs.map +1 -1
- package/dist/components/design/Svg.d.ts +1 -0
- package/dist/components/design/Svg.d.ts.map +1 -1
- package/dist/components/user/ConnectWallet.d.ts +1 -1
- package/dist/components/user/ConnectWallet.d.ts.map +1 -1
- package/dist/components/user/ConnectWallet.js +6 -100
- package/dist/components/user/ConnectWallet.js.map +1 -1
- package/dist/components/user/ConnectWallet.mjs +5 -183
- package/dist/components/user/ConnectWallet.mjs.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/providers/WalletConnectProvider.d.ts +23 -0
- package/dist/providers/WalletConnectProvider.d.ts.map +1 -0
- package/dist/providers/WalletConnectProvider.js +72 -0
- package/dist/providers/WalletConnectProvider.js.map +1 -0
- package/dist/providers/WalletConnectProvider.mjs +93 -0
- package/dist/providers/WalletConnectProvider.mjs.map +1 -0
- package/dist/providers/client/Provider.d.ts.map +1 -1
- package/dist/providers/client/Provider.js +5 -2
- package/dist/providers/client/Provider.js.map +1 -1
- package/dist/providers/client/Provider.mjs +5 -2
- package/dist/providers/client/Provider.mjs.map +1 -1
- package/dist/providers/modal/Provider.d.ts +5 -1
- package/dist/providers/modal/Provider.d.ts.map +1 -1
- package/dist/providers/modal/Provider.js.map +1 -1
- package/dist/providers/modal/Provider.mjs.map +1 -1
- package/dist/providers/modal/Root.d.ts.map +1 -1
- package/dist/providers/modal/Root.js +2 -0
- package/dist/providers/modal/Root.js.map +1 -1
- package/dist/providers/modal/Root.mjs +2 -0
- package/dist/providers/modal/Root.mjs.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/types/base.d.ts +6 -0
- package/dist/types/base.d.ts.map +1 -1
- package/dist/types/base.js +7 -0
- package/dist/types/base.js.map +1 -1
- package/dist/types/base.mjs +8 -1
- package/dist/types/base.mjs.map +1 -1
- package/dist/utils/utils.d.ts +2 -1
- package/dist/utils/utils.d.ts.map +1 -1
- package/dist/utils/utils.js +5 -0
- package/dist/utils/utils.js.map +1 -1
- package/dist/utils/utils.mjs +7 -1
- package/dist/utils/utils.mjs.map +1 -1
- package/package.json +3 -3
- package/dist/components/auth/Wallet.d.ts +0 -34
- package/dist/components/auth/Wallet.d.ts.map +0 -1
- package/dist/components/auth/Wallet.js +0 -514
- package/dist/components/auth/Wallet.js.map +0 -1
- package/dist/components/auth/Wallet.mjs +0 -615
- package/dist/components/auth/Wallet.mjs.map +0 -1
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
+
var Buttons = require('../../design/Buttons.js');
|
|
5
|
+
var reactFontawesome = require('@fortawesome/react-fontawesome');
|
|
6
|
+
var freeSolidSvgIcons = require('@fortawesome/free-solid-svg-icons');
|
|
7
|
+
var react = require('react');
|
|
8
|
+
var clsx = require('clsx');
|
|
9
|
+
var Success = require('../../design/Success.js');
|
|
10
|
+
var Hook = require('../../../providers/modal/Hook.js');
|
|
11
|
+
var Hook$1 = require('../../../providers/client/Hook.js');
|
|
12
|
+
var utils = require('../../../utils/utils.js');
|
|
13
|
+
var QRCodeDisplay = require('./QRCodeDisplay.js');
|
|
14
|
+
|
|
15
|
+
function DesktopWalletConnectScreen(props) {
|
|
16
|
+
const {
|
|
17
|
+
provider: inputProvider,
|
|
18
|
+
onAction,
|
|
19
|
+
onDisconnect,
|
|
20
|
+
onSelectAllWallets,
|
|
21
|
+
successPageDuration
|
|
22
|
+
} = props;
|
|
23
|
+
const {
|
|
24
|
+
pushPage,
|
|
25
|
+
popPages,
|
|
26
|
+
closeModal,
|
|
27
|
+
isMobile
|
|
28
|
+
} = Hook.useModal();
|
|
29
|
+
const {
|
|
30
|
+
walletProviders
|
|
31
|
+
} = Hook$1.useTurnkey();
|
|
32
|
+
const [isDisconnecting, setIsDisconnecting] = react.useState(false);
|
|
33
|
+
const [isConnecting, setIsConnecting] = react.useState(false);
|
|
34
|
+
const [disconnectError, setDisconnectError] = react.useState(false);
|
|
35
|
+
const [showConnectedScreen, setShowConnectedScreen] = react.useState(inputProvider.connectedAddresses?.length > 0);
|
|
36
|
+
const [showCopied, setShowCopied] = react.useState(false);
|
|
37
|
+
// Use a ref to track the latest provider for use in callbacks
|
|
38
|
+
const latestProviderRef = react.useRef(null);
|
|
39
|
+
// Find the current provider state
|
|
40
|
+
const provider = utils.findWalletConnectProvider(walletProviders, inputProvider.chainInfo.namespace);
|
|
41
|
+
// if provider is not found then that means that the user entered this screen
|
|
42
|
+
// while WalletConnect was still initializing, and then it failed to initialize
|
|
43
|
+
react.useEffect(() => {
|
|
44
|
+
if (!provider) {
|
|
45
|
+
// we have to go back two pages here since thats the screen
|
|
46
|
+
// we get wallet providers from state
|
|
47
|
+
popPages(2);
|
|
48
|
+
}
|
|
49
|
+
}, [provider, popPages]);
|
|
50
|
+
const connectedAccount = provider?.connectedAddresses?.[0] ?? null;
|
|
51
|
+
// Initial connection effect
|
|
52
|
+
react.useEffect(() => {
|
|
53
|
+
if (provider) {
|
|
54
|
+
latestProviderRef.current = provider;
|
|
55
|
+
// we don't try to connect if WalletConnect is still initializing or we are already connecting
|
|
56
|
+
if (!isConnecting && !provider.isLoading) {
|
|
57
|
+
setShowConnectedScreen(provider.connectedAddresses?.length > 0);
|
|
58
|
+
runAction(provider);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}, [provider]);
|
|
62
|
+
// Handle the connection action - uses the ref to get latest provider
|
|
63
|
+
const runAction = utils.useDebouncedCallback(async targetProvider => {
|
|
64
|
+
setIsConnecting(true);
|
|
65
|
+
try {
|
|
66
|
+
await onAction(targetProvider);
|
|
67
|
+
pushPage({
|
|
68
|
+
key: "Connect Success",
|
|
69
|
+
content: jsxRuntime.jsx(Success.SuccessPage, {
|
|
70
|
+
text: "Successfully connected to WalletConnect!",
|
|
71
|
+
onComplete: closeModal,
|
|
72
|
+
duration: successPageDuration
|
|
73
|
+
}),
|
|
74
|
+
preventBack: true,
|
|
75
|
+
showTitle: false
|
|
76
|
+
});
|
|
77
|
+
} catch {
|
|
78
|
+
// noop
|
|
79
|
+
} finally {
|
|
80
|
+
setIsConnecting(false);
|
|
81
|
+
}
|
|
82
|
+
}, 100);
|
|
83
|
+
const handleCopy = () => {
|
|
84
|
+
setShowCopied(true);
|
|
85
|
+
navigator.clipboard.writeText(`${provider?.uri}`);
|
|
86
|
+
setTimeout(() => {
|
|
87
|
+
setShowCopied(false);
|
|
88
|
+
}, 1500);
|
|
89
|
+
};
|
|
90
|
+
// Handle disconnection - uses the ref to get the correct provider after state update
|
|
91
|
+
const handleDisconnect = async () => {
|
|
92
|
+
setIsDisconnecting(true);
|
|
93
|
+
setDisconnectError(false);
|
|
94
|
+
try {
|
|
95
|
+
// Use the current provider from ref for disconnect
|
|
96
|
+
await onDisconnect?.(latestProviderRef.current);
|
|
97
|
+
} catch (err) {
|
|
98
|
+
console.error("Error disconnecting wallet:", err);
|
|
99
|
+
setDisconnectError(true);
|
|
100
|
+
} finally {
|
|
101
|
+
setIsDisconnecting(false);
|
|
102
|
+
setShowConnectedScreen(false);
|
|
103
|
+
}
|
|
104
|
+
};
|
|
105
|
+
return jsxRuntime.jsx("div", {
|
|
106
|
+
className: "p-3 flex flex-col items-center",
|
|
107
|
+
children: showConnectedScreen ? jsxRuntime.jsxs("div", {
|
|
108
|
+
className: clsx("mt-8 flex flex-col items-center gap-3", isMobile ? "w-full" : "w-96"),
|
|
109
|
+
children: [jsxRuntime.jsxs("div", {
|
|
110
|
+
className: "w-full justify-between flex items-center flex-1",
|
|
111
|
+
children: [jsxRuntime.jsx("div", {
|
|
112
|
+
className: clsx("flex items-center justify-center bg-icon-background-light dark:bg-icon-background-dark rounded-full p-2 text-icon-text-light dark:text-icon-text-dark", isMobile ? "size-18" : "size-24"),
|
|
113
|
+
children: jsxRuntime.jsx(reactFontawesome.FontAwesomeIcon, {
|
|
114
|
+
icon: freeSolidSvgIcons.faMobileScreen,
|
|
115
|
+
size: isMobile ? "3x" : "4x"
|
|
116
|
+
})
|
|
117
|
+
}), jsxRuntime.jsxs("div", {
|
|
118
|
+
className: "flex flex-row items-center justify-center space-x-2.5 font-medium text-icon-text-light dark:text-icon-text-dark",
|
|
119
|
+
children: [jsxRuntime.jsxs("div", {
|
|
120
|
+
className: "flex items-center justify-center",
|
|
121
|
+
children: [jsxRuntime.jsx("img", {
|
|
122
|
+
className: "size-5",
|
|
123
|
+
src: provider?.info.icon,
|
|
124
|
+
alt: "Wallet connect logo"
|
|
125
|
+
}), jsxRuntime.jsx("img", {
|
|
126
|
+
className: "size-5 absolute animate-ping",
|
|
127
|
+
src: provider?.info.icon,
|
|
128
|
+
alt: "Wallet connect logo"
|
|
129
|
+
})]
|
|
130
|
+
}), jsxRuntime.jsxs("span", {
|
|
131
|
+
children: [connectedAccount?.slice(0, 3), "...", connectedAccount?.slice(-3)]
|
|
132
|
+
})]
|
|
133
|
+
}), jsxRuntime.jsx("div", {
|
|
134
|
+
className: clsx("flex items-center justify-center bg-icon-background-light dark:bg-icon-background-dark rounded-full p-2 text-icon-text-light dark:text-icon-text-dark", isMobile ? "size-18" : "size-24"),
|
|
135
|
+
children: jsxRuntime.jsx(reactFontawesome.FontAwesomeIcon, {
|
|
136
|
+
icon: freeSolidSvgIcons.faLaptop,
|
|
137
|
+
size: isMobile ? "3x" : "4x"
|
|
138
|
+
})
|
|
139
|
+
})]
|
|
140
|
+
}), jsxRuntime.jsx("div", {
|
|
141
|
+
className: clsx("flex flex-row items-center mt-5 text-2xl font-bold text-center"),
|
|
142
|
+
children: "Already connected"
|
|
143
|
+
}), jsxRuntime.jsxs("div", {
|
|
144
|
+
className: "text-icon-text-light dark:text-icon-text-dark text-center text-xs flex flex-col space-y-2 !p-0",
|
|
145
|
+
children: [jsxRuntime.jsx("span", {
|
|
146
|
+
children: "Please open the wallet app on your phone to sign the message."
|
|
147
|
+
}), isDisconnecting ? jsxRuntime.jsx("span", {
|
|
148
|
+
className: "text-danger-light dark:text-danger-dark opacity-50",
|
|
149
|
+
children: "Disconnecting..."
|
|
150
|
+
}) : disconnectError ? jsxRuntime.jsx("span", {
|
|
151
|
+
className: "text-danger-light dark:text-danger-dark opacity-50",
|
|
152
|
+
children: "Error disconnecting wallet."
|
|
153
|
+
}) : jsxRuntime.jsxs("span", {
|
|
154
|
+
children: ["Need to connect a different wallet?", " ", jsxRuntime.jsx("span", {
|
|
155
|
+
className: "text-danger-light dark:text-danger-dark cursor-pointer underline",
|
|
156
|
+
onClick: handleDisconnect,
|
|
157
|
+
children: "Disconnect"
|
|
158
|
+
}), " ", "this wallet first."]
|
|
159
|
+
})]
|
|
160
|
+
})]
|
|
161
|
+
}) : jsxRuntime.jsxs("div", {
|
|
162
|
+
className: clsx("mt-8 flex flex-col items-center gap-3", isMobile ? "w-full" : "w-96"),
|
|
163
|
+
children: [jsxRuntime.jsx(QRCodeDisplay.QRCodeDisplay, {
|
|
164
|
+
uri: provider?.isLoading ? "https://www.turnkey.com/" : provider?.uri ?? "",
|
|
165
|
+
icon: provider?.info.icon ?? "",
|
|
166
|
+
isLoading: !!provider?.isLoading
|
|
167
|
+
}), jsxRuntime.jsxs(Buttons.BaseButton, {
|
|
168
|
+
onClick: handleCopy,
|
|
169
|
+
className: clsx("text-xs font-semibold bg-transparent border-none text-icon-text-light dark:text-icon-text-dark", "flex flex-row items-center gap-x-2 px-3 py-2 rounded-full transition-all", "hover:bg-icon-background-light dark:hover:bg-icon-background-dark active:scale-95", provider?.isLoading && "invisible pointer-events-none"),
|
|
170
|
+
children: [jsxRuntime.jsx("span", {
|
|
171
|
+
children: "Copy link"
|
|
172
|
+
}), jsxRuntime.jsxs("div", {
|
|
173
|
+
className: "relative",
|
|
174
|
+
children: [jsxRuntime.jsx(reactFontawesome.FontAwesomeIcon, {
|
|
175
|
+
icon: showCopied ? freeSolidSvgIcons.faCheck : freeSolidSvgIcons.faCopy,
|
|
176
|
+
className: clsx("transition-colors", showCopied ? "text-success-light dark:text-success-dark" : "text-icon-text-light dark:text-icon-text-dark")
|
|
177
|
+
}), showCopied && jsxRuntime.jsx(reactFontawesome.FontAwesomeIcon, {
|
|
178
|
+
icon: freeSolidSvgIcons.faCheck,
|
|
179
|
+
className: "absolute inset-0 m-auto text-success-light dark:text-success-dark animate-ping"
|
|
180
|
+
})]
|
|
181
|
+
})]
|
|
182
|
+
}), jsxRuntime.jsx("div", {
|
|
183
|
+
className: clsx("text-2xl font-bold text-center"),
|
|
184
|
+
children: provider?.isLoading ? "Initializing WalletConnect..." : "Use your phone"
|
|
185
|
+
}), jsxRuntime.jsx("div", {
|
|
186
|
+
className: "text-icon-text-light dark:text-icon-text-dark text-center !p-0",
|
|
187
|
+
children: provider?.isLoading ? "Preparing your connection. This will only take a moment." : "Scan this QR code with your WalletConnect-compatible wallet to connect"
|
|
188
|
+
}), onSelectAllWallets && jsxRuntime.jsxs("span", {
|
|
189
|
+
className: "text-icon-text-light dark:text-icon-text-dark text-center text-xs !p-0 mt-2",
|
|
190
|
+
children: ["Not what you're looking for?", " ", jsxRuntime.jsx("span", {
|
|
191
|
+
className: "text-primary-light dark:text-primary-dark cursor-pointer underline",
|
|
192
|
+
onClick: () => {
|
|
193
|
+
popPages(2);
|
|
194
|
+
onSelectAllWallets();
|
|
195
|
+
},
|
|
196
|
+
children: "See all WalletConnect apps."
|
|
197
|
+
})]
|
|
198
|
+
})]
|
|
199
|
+
})
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
exports.DesktopWalletConnectScreen = DesktopWalletConnectScreen;
|
|
204
|
+
//# sourceMappingURL=DesktopWalletConnectScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DesktopWalletConnectScreen.js","sources":["../../../../src/components/auth/wallet/DesktopWalletConnectScreen.tsx"],"sourcesContent":[null],"names":["DesktopWalletConnectScreen","props","provider","inputProvider","onAction","onDisconnect","onSelectAllWallets","successPageDuration","pushPage","popPages","closeModal","isMobile","useModal","walletProviders","useTurnkey","isDisconnecting","setIsDisconnecting","useState","isConnecting","setIsConnecting","disconnectError","setDisconnectError","showConnectedScreen","setShowConnectedScreen","connectedAddresses","length","showCopied","setShowCopied","latestProviderRef","useRef","findWalletConnectProvider","chainInfo","namespace","useEffect","connectedAccount","current","isLoading","runAction","useDebouncedCallback","targetProvider","key","content","_jsx","SuccessPage","text","onComplete","duration","preventBack","showTitle","handleCopy","navigator","clipboard","writeText","uri","setTimeout","handleDisconnect","err","console","error","className","children","_jsxs","clsx","FontAwesomeIcon","icon","faMobileScreen","size","src","info","alt","slice","faLaptop","onClick","QRCodeDisplay","BaseButton","faCheck","faCopy"],"mappings":"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"}
|
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
import { slicedToArray as _slicedToArray, asyncToGenerator as _asyncToGenerator, regenerator as _regenerator } from '../../../_virtual/_rollupPluginBabelHelpers.mjs';
|
|
2
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
3
|
+
import { BaseButton } from '../../design/Buttons.mjs';
|
|
4
|
+
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
5
|
+
import { faMobileScreen, faLaptop, faCheck, faCopy } from '@fortawesome/free-solid-svg-icons';
|
|
6
|
+
import { useState, useRef, useEffect } from 'react';
|
|
7
|
+
import clsx from 'clsx';
|
|
8
|
+
import { SuccessPage } from '../../design/Success.mjs';
|
|
9
|
+
import { useModal } from '../../../providers/modal/Hook.mjs';
|
|
10
|
+
import { useTurnkey } from '../../../providers/client/Hook.mjs';
|
|
11
|
+
import { findWalletConnectProvider, useDebouncedCallback } from '../../../utils/utils.mjs';
|
|
12
|
+
import { QRCodeDisplay } from './QRCodeDisplay.mjs';
|
|
13
|
+
|
|
14
|
+
function DesktopWalletConnectScreen(props) {
|
|
15
|
+
var _inputProvider$connec, _provider$connectedAd, _provider$connectedAd2, _provider$uri, _provider$info$icon;
|
|
16
|
+
var inputProvider = props.provider,
|
|
17
|
+
onAction = props.onAction,
|
|
18
|
+
onDisconnect = props.onDisconnect,
|
|
19
|
+
onSelectAllWallets = props.onSelectAllWallets,
|
|
20
|
+
successPageDuration = props.successPageDuration;
|
|
21
|
+
var _useModal = useModal(),
|
|
22
|
+
pushPage = _useModal.pushPage,
|
|
23
|
+
popPages = _useModal.popPages,
|
|
24
|
+
closeModal = _useModal.closeModal,
|
|
25
|
+
isMobile = _useModal.isMobile;
|
|
26
|
+
var _useTurnkey = useTurnkey(),
|
|
27
|
+
walletProviders = _useTurnkey.walletProviders;
|
|
28
|
+
var _useState = useState(false),
|
|
29
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
30
|
+
isDisconnecting = _useState2[0],
|
|
31
|
+
setIsDisconnecting = _useState2[1];
|
|
32
|
+
var _useState3 = useState(false),
|
|
33
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
34
|
+
isConnecting = _useState4[0],
|
|
35
|
+
setIsConnecting = _useState4[1];
|
|
36
|
+
var _useState5 = useState(false),
|
|
37
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
38
|
+
disconnectError = _useState6[0],
|
|
39
|
+
setDisconnectError = _useState6[1];
|
|
40
|
+
var _useState7 = useState(((_inputProvider$connec = inputProvider.connectedAddresses) === null || _inputProvider$connec === void 0 ? void 0 : _inputProvider$connec.length) > 0),
|
|
41
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
42
|
+
showConnectedScreen = _useState8[0],
|
|
43
|
+
setShowConnectedScreen = _useState8[1];
|
|
44
|
+
var _useState9 = useState(false),
|
|
45
|
+
_useState0 = _slicedToArray(_useState9, 2),
|
|
46
|
+
showCopied = _useState0[0],
|
|
47
|
+
setShowCopied = _useState0[1];
|
|
48
|
+
// Use a ref to track the latest provider for use in callbacks
|
|
49
|
+
var latestProviderRef = useRef(null);
|
|
50
|
+
// Find the current provider state
|
|
51
|
+
var provider = findWalletConnectProvider(walletProviders, inputProvider.chainInfo.namespace);
|
|
52
|
+
// if provider is not found then that means that the user entered this screen
|
|
53
|
+
// while WalletConnect was still initializing, and then it failed to initialize
|
|
54
|
+
useEffect(function () {
|
|
55
|
+
if (!provider) {
|
|
56
|
+
// we have to go back two pages here since thats the screen
|
|
57
|
+
// we get wallet providers from state
|
|
58
|
+
popPages(2);
|
|
59
|
+
}
|
|
60
|
+
}, [provider, popPages]);
|
|
61
|
+
var connectedAccount = (_provider$connectedAd = provider === null || provider === void 0 ? void 0 : (_provider$connectedAd2 = provider.connectedAddresses) === null || _provider$connectedAd2 === void 0 ? void 0 : _provider$connectedAd2[0]) !== null && _provider$connectedAd !== void 0 ? _provider$connectedAd : null;
|
|
62
|
+
// Initial connection effect
|
|
63
|
+
useEffect(function () {
|
|
64
|
+
if (provider) {
|
|
65
|
+
latestProviderRef.current = provider;
|
|
66
|
+
// we don't try to connect if WalletConnect is still initializing or we are already connecting
|
|
67
|
+
if (!isConnecting && !provider.isLoading) {
|
|
68
|
+
var _provider$connectedAd3;
|
|
69
|
+
setShowConnectedScreen(((_provider$connectedAd3 = provider.connectedAddresses) === null || _provider$connectedAd3 === void 0 ? void 0 : _provider$connectedAd3.length) > 0);
|
|
70
|
+
runAction(provider);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}, [provider]);
|
|
74
|
+
// Handle the connection action - uses the ref to get latest provider
|
|
75
|
+
var runAction = useDebouncedCallback(/*#__PURE__*/function () {
|
|
76
|
+
var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(targetProvider) {
|
|
77
|
+
return _regenerator().w(function (_context) {
|
|
78
|
+
while (1) switch (_context.p = _context.n) {
|
|
79
|
+
case 0:
|
|
80
|
+
setIsConnecting(true);
|
|
81
|
+
_context.p = 1;
|
|
82
|
+
_context.n = 2;
|
|
83
|
+
return onAction(targetProvider);
|
|
84
|
+
case 2:
|
|
85
|
+
pushPage({
|
|
86
|
+
key: "Connect Success",
|
|
87
|
+
content: jsx(SuccessPage, {
|
|
88
|
+
text: "Successfully connected to WalletConnect!",
|
|
89
|
+
onComplete: closeModal,
|
|
90
|
+
duration: successPageDuration
|
|
91
|
+
}),
|
|
92
|
+
preventBack: true,
|
|
93
|
+
showTitle: false
|
|
94
|
+
});
|
|
95
|
+
_context.n = 4;
|
|
96
|
+
break;
|
|
97
|
+
case 3:
|
|
98
|
+
_context.p = 3;
|
|
99
|
+
_context.v;
|
|
100
|
+
case 4:
|
|
101
|
+
_context.p = 4;
|
|
102
|
+
setIsConnecting(false);
|
|
103
|
+
return _context.f(4);
|
|
104
|
+
case 5:
|
|
105
|
+
return _context.a(2);
|
|
106
|
+
}
|
|
107
|
+
}, _callee, null, [[1, 3, 4, 5]]);
|
|
108
|
+
}));
|
|
109
|
+
return function (_x) {
|
|
110
|
+
return _ref.apply(this, arguments);
|
|
111
|
+
};
|
|
112
|
+
}(), 100);
|
|
113
|
+
var handleCopy = function handleCopy() {
|
|
114
|
+
setShowCopied(true);
|
|
115
|
+
navigator.clipboard.writeText("".concat(provider === null || provider === void 0 ? void 0 : provider.uri));
|
|
116
|
+
setTimeout(function () {
|
|
117
|
+
setShowCopied(false);
|
|
118
|
+
}, 1500);
|
|
119
|
+
};
|
|
120
|
+
// Handle disconnection - uses the ref to get the correct provider after state update
|
|
121
|
+
var handleDisconnect = /*#__PURE__*/function () {
|
|
122
|
+
var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
|
|
123
|
+
var _t2;
|
|
124
|
+
return _regenerator().w(function (_context2) {
|
|
125
|
+
while (1) switch (_context2.p = _context2.n) {
|
|
126
|
+
case 0:
|
|
127
|
+
setIsDisconnecting(true);
|
|
128
|
+
setDisconnectError(false);
|
|
129
|
+
_context2.p = 1;
|
|
130
|
+
_context2.n = 2;
|
|
131
|
+
return onDisconnect === null || onDisconnect === void 0 ? void 0 : onDisconnect(latestProviderRef.current);
|
|
132
|
+
case 2:
|
|
133
|
+
_context2.n = 4;
|
|
134
|
+
break;
|
|
135
|
+
case 3:
|
|
136
|
+
_context2.p = 3;
|
|
137
|
+
_t2 = _context2.v;
|
|
138
|
+
console.error("Error disconnecting wallet:", _t2);
|
|
139
|
+
setDisconnectError(true);
|
|
140
|
+
case 4:
|
|
141
|
+
_context2.p = 4;
|
|
142
|
+
setIsDisconnecting(false);
|
|
143
|
+
setShowConnectedScreen(false);
|
|
144
|
+
return _context2.f(4);
|
|
145
|
+
case 5:
|
|
146
|
+
return _context2.a(2);
|
|
147
|
+
}
|
|
148
|
+
}, _callee2, null, [[1, 3, 4, 5]]);
|
|
149
|
+
}));
|
|
150
|
+
return function handleDisconnect() {
|
|
151
|
+
return _ref2.apply(this, arguments);
|
|
152
|
+
};
|
|
153
|
+
}();
|
|
154
|
+
return jsx("div", {
|
|
155
|
+
className: "p-3 flex flex-col items-center",
|
|
156
|
+
children: showConnectedScreen ? jsxs("div", {
|
|
157
|
+
className: clsx("mt-8 flex flex-col items-center gap-3", isMobile ? "w-full" : "w-96"),
|
|
158
|
+
children: [jsxs("div", {
|
|
159
|
+
className: "w-full justify-between flex items-center flex-1",
|
|
160
|
+
children: [jsx("div", {
|
|
161
|
+
className: clsx("flex items-center justify-center bg-icon-background-light dark:bg-icon-background-dark rounded-full p-2 text-icon-text-light dark:text-icon-text-dark", isMobile ? "size-18" : "size-24"),
|
|
162
|
+
children: jsx(FontAwesomeIcon, {
|
|
163
|
+
icon: faMobileScreen,
|
|
164
|
+
size: isMobile ? "3x" : "4x"
|
|
165
|
+
})
|
|
166
|
+
}), jsxs("div", {
|
|
167
|
+
className: "flex flex-row items-center justify-center space-x-2.5 font-medium text-icon-text-light dark:text-icon-text-dark",
|
|
168
|
+
children: [jsxs("div", {
|
|
169
|
+
className: "flex items-center justify-center",
|
|
170
|
+
children: [jsx("img", {
|
|
171
|
+
className: "size-5",
|
|
172
|
+
src: provider === null || provider === void 0 ? void 0 : provider.info.icon,
|
|
173
|
+
alt: "Wallet connect logo"
|
|
174
|
+
}), jsx("img", {
|
|
175
|
+
className: "size-5 absolute animate-ping",
|
|
176
|
+
src: provider === null || provider === void 0 ? void 0 : provider.info.icon,
|
|
177
|
+
alt: "Wallet connect logo"
|
|
178
|
+
})]
|
|
179
|
+
}), jsxs("span", {
|
|
180
|
+
children: [connectedAccount === null || connectedAccount === void 0 ? void 0 : connectedAccount.slice(0, 3), "...", connectedAccount === null || connectedAccount === void 0 ? void 0 : connectedAccount.slice(-3)]
|
|
181
|
+
})]
|
|
182
|
+
}), jsx("div", {
|
|
183
|
+
className: clsx("flex items-center justify-center bg-icon-background-light dark:bg-icon-background-dark rounded-full p-2 text-icon-text-light dark:text-icon-text-dark", isMobile ? "size-18" : "size-24"),
|
|
184
|
+
children: jsx(FontAwesomeIcon, {
|
|
185
|
+
icon: faLaptop,
|
|
186
|
+
size: isMobile ? "3x" : "4x"
|
|
187
|
+
})
|
|
188
|
+
})]
|
|
189
|
+
}), jsx("div", {
|
|
190
|
+
className: clsx("flex flex-row items-center mt-5 text-2xl font-bold text-center"),
|
|
191
|
+
children: "Already connected"
|
|
192
|
+
}), jsxs("div", {
|
|
193
|
+
className: "text-icon-text-light dark:text-icon-text-dark text-center text-xs flex flex-col space-y-2 !p-0",
|
|
194
|
+
children: [jsx("span", {
|
|
195
|
+
children: "Please open the wallet app on your phone to sign the message."
|
|
196
|
+
}), isDisconnecting ? jsx("span", {
|
|
197
|
+
className: "text-danger-light dark:text-danger-dark opacity-50",
|
|
198
|
+
children: "Disconnecting..."
|
|
199
|
+
}) : disconnectError ? jsx("span", {
|
|
200
|
+
className: "text-danger-light dark:text-danger-dark opacity-50",
|
|
201
|
+
children: "Error disconnecting wallet."
|
|
202
|
+
}) : jsxs("span", {
|
|
203
|
+
children: ["Need to connect a different wallet?", " ", jsx("span", {
|
|
204
|
+
className: "text-danger-light dark:text-danger-dark cursor-pointer underline",
|
|
205
|
+
onClick: handleDisconnect,
|
|
206
|
+
children: "Disconnect"
|
|
207
|
+
}), " ", "this wallet first."]
|
|
208
|
+
})]
|
|
209
|
+
})]
|
|
210
|
+
}) : jsxs("div", {
|
|
211
|
+
className: clsx("mt-8 flex flex-col items-center gap-3", isMobile ? "w-full" : "w-96"),
|
|
212
|
+
children: [jsx(QRCodeDisplay, {
|
|
213
|
+
uri: provider !== null && provider !== void 0 && provider.isLoading ? "https://www.turnkey.com/" : (_provider$uri = provider === null || provider === void 0 ? void 0 : provider.uri) !== null && _provider$uri !== void 0 ? _provider$uri : "",
|
|
214
|
+
icon: (_provider$info$icon = provider === null || provider === void 0 ? void 0 : provider.info.icon) !== null && _provider$info$icon !== void 0 ? _provider$info$icon : "",
|
|
215
|
+
isLoading: !!(provider !== null && provider !== void 0 && provider.isLoading)
|
|
216
|
+
}), jsxs(BaseButton, {
|
|
217
|
+
onClick: handleCopy,
|
|
218
|
+
className: clsx("text-xs font-semibold bg-transparent border-none text-icon-text-light dark:text-icon-text-dark", "flex flex-row items-center gap-x-2 px-3 py-2 rounded-full transition-all", "hover:bg-icon-background-light dark:hover:bg-icon-background-dark active:scale-95", (provider === null || provider === void 0 ? void 0 : provider.isLoading) && "invisible pointer-events-none"),
|
|
219
|
+
children: [jsx("span", {
|
|
220
|
+
children: "Copy link"
|
|
221
|
+
}), jsxs("div", {
|
|
222
|
+
className: "relative",
|
|
223
|
+
children: [jsx(FontAwesomeIcon, {
|
|
224
|
+
icon: showCopied ? faCheck : faCopy,
|
|
225
|
+
className: clsx("transition-colors", showCopied ? "text-success-light dark:text-success-dark" : "text-icon-text-light dark:text-icon-text-dark")
|
|
226
|
+
}), showCopied && jsx(FontAwesomeIcon, {
|
|
227
|
+
icon: faCheck,
|
|
228
|
+
className: "absolute inset-0 m-auto text-success-light dark:text-success-dark animate-ping"
|
|
229
|
+
})]
|
|
230
|
+
})]
|
|
231
|
+
}), jsx("div", {
|
|
232
|
+
className: clsx("text-2xl font-bold text-center"),
|
|
233
|
+
children: provider !== null && provider !== void 0 && provider.isLoading ? "Initializing WalletConnect..." : "Use your phone"
|
|
234
|
+
}), jsx("div", {
|
|
235
|
+
className: "text-icon-text-light dark:text-icon-text-dark text-center !p-0",
|
|
236
|
+
children: provider !== null && provider !== void 0 && provider.isLoading ? "Preparing your connection. This will only take a moment." : "Scan this QR code with your WalletConnect-compatible wallet to connect"
|
|
237
|
+
}), onSelectAllWallets && jsxs("span", {
|
|
238
|
+
className: "text-icon-text-light dark:text-icon-text-dark text-center text-xs !p-0 mt-2",
|
|
239
|
+
children: ["Not what you're looking for?", " ", jsx("span", {
|
|
240
|
+
className: "text-primary-light dark:text-primary-dark cursor-pointer underline",
|
|
241
|
+
onClick: function onClick() {
|
|
242
|
+
popPages(2);
|
|
243
|
+
onSelectAllWallets();
|
|
244
|
+
},
|
|
245
|
+
children: "See all WalletConnect apps."
|
|
246
|
+
})]
|
|
247
|
+
})]
|
|
248
|
+
})
|
|
249
|
+
});
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
export { DesktopWalletConnectScreen };
|
|
253
|
+
//# sourceMappingURL=DesktopWalletConnectScreen.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DesktopWalletConnectScreen.mjs","sources":["../../../../src/components/auth/wallet/DesktopWalletConnectScreen.tsx"],"sourcesContent":[null],"names":["DesktopWalletConnectScreen","props","_inputProvider$connec","_provider$connectedAd","_provider$connectedAd2","_provider$uri","_provider$info$icon","inputProvider","provider","onAction","onDisconnect","onSelectAllWallets","successPageDuration","_useModal","useModal","pushPage","popPages","closeModal","isMobile","_useTurnkey","useTurnkey","walletProviders","_useState","useState","_useState2","_slicedToArray","isDisconnecting","setIsDisconnecting","_useState3","_useState4","isConnecting","setIsConnecting","_useState5","_useState6","disconnectError","setDisconnectError","_useState7","connectedAddresses","length","_useState8","showConnectedScreen","setShowConnectedScreen","_useState9","_useState0","showCopied","setShowCopied","latestProviderRef","useRef","findWalletConnectProvider","chainInfo","namespace","useEffect","connectedAccount","current","isLoading","_provider$connectedAd3","runAction","useDebouncedCallback","_ref","_asyncToGenerator","_regenerator","m","_callee","targetProvider","w","_context","p","n","key","content","_jsx","SuccessPage","text","onComplete","duration","preventBack","showTitle","v","f","a","_x","apply","arguments","handleCopy","navigator","clipboard","writeText","concat","uri","setTimeout","handleDisconnect","_ref2","_callee2","_t2","_context2","console","error","className","children","_jsxs","clsx","FontAwesomeIcon","icon","faMobileScreen","size","src","info","alt","slice","faLaptop","onClick","QRCodeDisplay","BaseButton","faCheck","faCopy"],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { WalletProvider } from "@turnkey/core";
|
|
2
|
+
interface DisconnectWalletScreenProps {
|
|
3
|
+
provider: WalletProvider;
|
|
4
|
+
onDisconnect: (provider: WalletProvider) => Promise<void>;
|
|
5
|
+
}
|
|
6
|
+
export declare function DisconnectWalletScreen(props: DisconnectWalletScreenProps): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=DisconnectWalletScreen.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DisconnectWalletScreen.d.ts","sourceRoot":"","sources":["../../../../src/components/auth/wallet/DisconnectWalletScreen.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAGpD,UAAU,2BAA2B;IACnC,QAAQ,EAAE,cAAc,CAAC;IACzB,YAAY,EAAE,CAAC,QAAQ,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3D;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,2BAA2B,2CAsDxE"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
+
var Buttons = require('../../design/Buttons.js');
|
|
5
|
+
var react = require('react');
|
|
6
|
+
var clsx = require('clsx');
|
|
7
|
+
var Hook = require('../../../providers/modal/Hook.js');
|
|
8
|
+
|
|
9
|
+
function DisconnectWalletScreen(props) {
|
|
10
|
+
const {
|
|
11
|
+
provider,
|
|
12
|
+
onDisconnect
|
|
13
|
+
} = props;
|
|
14
|
+
const {
|
|
15
|
+
isMobile
|
|
16
|
+
} = Hook.useModal();
|
|
17
|
+
const [isLoading, setIsLoading] = react.useState(false);
|
|
18
|
+
const [hasError, setHasError] = react.useState(false);
|
|
19
|
+
const handleDisconnect = async () => {
|
|
20
|
+
setIsLoading(true);
|
|
21
|
+
setHasError(false);
|
|
22
|
+
try {
|
|
23
|
+
await onDisconnect(provider);
|
|
24
|
+
} catch (err) {
|
|
25
|
+
setHasError(true);
|
|
26
|
+
} finally {
|
|
27
|
+
setIsLoading(false);
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
return jsxRuntime.jsxs("div", {
|
|
31
|
+
className: clsx("mt-8", isMobile ? "w-full" : "w-96"),
|
|
32
|
+
children: [jsxRuntime.jsxs("div", {
|
|
33
|
+
className: "mt-6 mb-5 flex flex-col items-center gap-3",
|
|
34
|
+
children: [jsxRuntime.jsx("img", {
|
|
35
|
+
src: provider.info.icon ?? "",
|
|
36
|
+
className: "size-14 rounded-full"
|
|
37
|
+
}), jsxRuntime.jsx("div", {
|
|
38
|
+
className: clsx("text-2xl font-bold text-center", hasError && "text-danger-light dark:text-danger-dark"),
|
|
39
|
+
children: hasError ? "You can't disconnect this wallet!" : `Disconnect ${provider.info.name}`
|
|
40
|
+
}), jsxRuntime.jsx("div", {
|
|
41
|
+
className: "text-icon-text-light dark:text-icon-text-dark text-center !p-0",
|
|
42
|
+
children: hasError ? `Try disconnecting directly from the ${provider.info.name} app` : "You can always connect this wallet again later."
|
|
43
|
+
})]
|
|
44
|
+
}), jsxRuntime.jsx("div", {
|
|
45
|
+
className: "flex my-2 mt-0",
|
|
46
|
+
children: jsxRuntime.jsx(Buttons.ActionButton, {
|
|
47
|
+
onClick: handleDisconnect,
|
|
48
|
+
loading: isLoading,
|
|
49
|
+
className: clsx("w-full max-w-md bg-danger-light dark:bg-danger-dark text-primary-text-light dark:text-primary-text-dark", hasError && "animate-shake opacity-50"),
|
|
50
|
+
spinnerClassName: "text-primary-danger-text-light dark:text-primary-danger-text-dark",
|
|
51
|
+
children: "Disconnect Wallet"
|
|
52
|
+
})
|
|
53
|
+
})]
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
exports.DisconnectWalletScreen = DisconnectWalletScreen;
|
|
58
|
+
//# sourceMappingURL=DisconnectWalletScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DisconnectWalletScreen.js","sources":["../../../../src/components/auth/wallet/DisconnectWalletScreen.tsx"],"sourcesContent":[null],"names":["DisconnectWalletScreen","props","provider","onDisconnect","isMobile","useModal","isLoading","setIsLoading","useState","hasError","setHasError","handleDisconnect","err","_jsxs","className","clsx","children","_jsx","src","info","icon","name","ActionButton","onClick","loading","spinnerClassName"],"mappings":";;;;;;;;AAWM,SAAUA,sBAAsBA,CAACC,KAAkC,EAAA;EACvE,MAAM;IAAEC,QAAQ;AAAEC,IAAAA;AAAY,GAAE,GAAGF,KAAK;EACxC,MAAM;AAAEG,IAAAA;GAAU,GAAGC,aAAQ,EAAE;EAC/B,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAGC,cAAQ,CAAC,KAAK,CAAC;EACjD,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAGF,cAAQ,CAAC,KAAK,CAAC;AAE/C,EAAA,MAAMG,gBAAgB,GAAG,YAAW;IAClCJ,YAAY,CAAC,IAAI,CAAC;IAClBG,WAAW,CAAC,KAAK,CAAC;IAClB,IAAI;MACF,MAAMP,YAAY,CAACD,QAAQ,CAAC;IAC9B,CAAC,CAAC,OAAOU,GAAG,EAAE;MACZF,WAAW,CAAC,IAAI,CAAC;AACnB,IAAA,CAAC,SAAS;MACRH,YAAY,CAAC,KAAK,CAAC;AACrB,IAAA;EACF,CAAC;EAED,OACEM,eAAA,CAAA,KAAA,EAAA;IAAKC,SAAS,EAAEC,IAAI,CAAC,MAAM,EAAEX,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;AAAAY,IAAAA,QAAA,EAAA,CACxDH;AAAKC,MAAAA,SAAS,EAAC,4CAA4C;AAAAE,MAAAA,QAAA,EAAA,CACzDC,cAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,GAAG,EAAEhB,QAAQ,CAACiB,IAAI,CAACC,IAAI,IAAI,EAAE;AAAEN,QAAAA,SAAS,EAAC;AAAsB,OAAA,CAAG,EACvEG;QACEH,SAAS,EAAEC,IAAI,CACb,gCAAgC,EAChCN,QAAQ,IAAI,yCAAyC,CACtD;QAAAO,QAAA,EAEAP,QAAQ,GACL,mCAAmC,GACnC,cAAcP,QAAQ,CAACiB,IAAI,CAACE,IAAI,CAAA;AAAE,OAAA,CAClC,EACNJ,cAAA,CAAA,KAAA,EAAA;AAAKH,QAAAA,SAAS,EAAC,gEAAgE;kBAC5EL,QAAQ,GACL,CAAA,oCAAA,EAAuCP,QAAQ,CAACiB,IAAI,CAACE,IAAI,CAAA,IAAA,CAAM,GAC/D;AAAiD,OAAA,CACjD;AAAA,KAAA,CACF,EAENJ;AAAKH,MAAAA,SAAS,EAAC,gBAAgB;AAAAE,MAAAA,QAAA,EAC7BC,eAACK,oBAAY,EAAA;AACXC,QAAAA,OAAO,EAAEZ,gBAAgB;AACzBa,QAAAA,OAAO,EAAElB,SAAS;QAClBQ,SAAS,EAAEC,IAAI,CACb,yGAAyG,EACzGN,QAAQ,IAAI,0BAA0B,CACvC;AACDgB,QAAAA,gBAAgB,EAAC,mEAAmE;;;AAGvE,KAAA,CACX;AAAA,GAAA,CACF;AAEV;;;;"}
|