@turnkey/react-wallet-kit 2.0.0 → 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.
Files changed (169) hide show
  1. package/dist/components/auth/index.d.ts.map +1 -1
  2. package/dist/components/auth/index.js +7 -57
  3. package/dist/components/auth/index.js.map +1 -1
  4. package/dist/components/auth/index.mjs +16 -132
  5. package/dist/components/auth/index.mjs.map +1 -1
  6. package/dist/components/auth/wallet/DesktopWalletConnectScreen.d.ts +10 -0
  7. package/dist/components/auth/wallet/DesktopWalletConnectScreen.d.ts.map +1 -0
  8. package/dist/components/auth/wallet/DesktopWalletConnectScreen.js +204 -0
  9. package/dist/components/auth/wallet/DesktopWalletConnectScreen.js.map +1 -0
  10. package/dist/components/auth/wallet/DesktopWalletConnectScreen.mjs +253 -0
  11. package/dist/components/auth/wallet/DesktopWalletConnectScreen.mjs.map +1 -0
  12. package/dist/components/auth/wallet/DisconnectWalletScreen.d.ts +8 -0
  13. package/dist/components/auth/wallet/DisconnectWalletScreen.d.ts.map +1 -0
  14. package/dist/components/auth/wallet/DisconnectWalletScreen.js +58 -0
  15. package/dist/components/auth/wallet/DisconnectWalletScreen.js.map +1 -0
  16. package/dist/components/auth/wallet/DisconnectWalletScreen.mjs +80 -0
  17. package/dist/components/auth/wallet/DisconnectWalletScreen.mjs.map +1 -0
  18. package/dist/components/auth/wallet/ExternalWalletChainSelector.d.ts +10 -0
  19. package/dist/components/auth/wallet/ExternalWalletChainSelector.d.ts.map +1 -0
  20. package/dist/components/auth/wallet/ExternalWalletChainSelector.js +115 -0
  21. package/dist/components/auth/wallet/ExternalWalletChainSelector.js.map +1 -0
  22. package/dist/components/auth/wallet/ExternalWalletChainSelector.mjs +149 -0
  23. package/dist/components/auth/wallet/ExternalWalletChainSelector.mjs.map +1 -0
  24. package/dist/components/auth/wallet/ExternalWalletSelector.d.ts +18 -0
  25. package/dist/components/auth/wallet/ExternalWalletSelector.d.ts.map +1 -0
  26. package/dist/components/auth/wallet/ExternalWalletSelector.js +233 -0
  27. package/dist/components/auth/wallet/ExternalWalletSelector.js.map +1 -0
  28. package/dist/components/auth/wallet/ExternalWalletSelector.mjs +323 -0
  29. package/dist/components/auth/wallet/ExternalWalletSelector.mjs.map +1 -0
  30. package/dist/components/auth/wallet/MobileWalletConnectScreen.d.ts +11 -0
  31. package/dist/components/auth/wallet/MobileWalletConnectScreen.d.ts.map +1 -0
  32. package/dist/components/auth/wallet/MobileWalletConnectScreen.js +200 -0
  33. package/dist/components/auth/wallet/MobileWalletConnectScreen.js.map +1 -0
  34. package/dist/components/auth/wallet/MobileWalletConnectScreen.mjs +251 -0
  35. package/dist/components/auth/wallet/MobileWalletConnectScreen.mjs.map +1 -0
  36. package/dist/components/auth/wallet/QRCodeDisplay.d.ts +8 -0
  37. package/dist/components/auth/wallet/QRCodeDisplay.d.ts.map +1 -0
  38. package/dist/components/auth/wallet/QRCodeDisplay.js +37 -0
  39. package/dist/components/auth/wallet/QRCodeDisplay.js.map +1 -0
  40. package/dist/components/auth/wallet/QRCodeDisplay.mjs +33 -0
  41. package/dist/components/auth/wallet/QRCodeDisplay.mjs.map +1 -0
  42. package/dist/components/auth/wallet/ShowAllWalletsScreen.d.ts +8 -0
  43. package/dist/components/auth/wallet/ShowAllWalletsScreen.d.ts.map +1 -0
  44. package/dist/components/auth/wallet/ShowAllWalletsScreen.js +253 -0
  45. package/dist/components/auth/wallet/ShowAllWalletsScreen.js.map +1 -0
  46. package/dist/components/auth/wallet/ShowAllWalletsScreen.mjs +299 -0
  47. package/dist/components/auth/wallet/ShowAllWalletsScreen.mjs.map +1 -0
  48. package/dist/components/auth/wallet/WalletAuthButton.d.ts +6 -0
  49. package/dist/components/auth/wallet/WalletAuthButton.d.ts.map +1 -0
  50. package/dist/components/auth/wallet/WalletAuthButton.js +33 -0
  51. package/dist/components/auth/wallet/WalletAuthButton.js.map +1 -0
  52. package/dist/components/auth/wallet/WalletAuthButton.mjs +47 -0
  53. package/dist/components/auth/wallet/WalletAuthButton.mjs.map +1 -0
  54. package/dist/components/auth/wallet/WalletButton.d.ts +16 -0
  55. package/dist/components/auth/wallet/WalletButton.d.ts.map +1 -0
  56. package/dist/components/auth/wallet/WalletButton.js +79 -0
  57. package/dist/components/auth/wallet/WalletButton.js.map +1 -0
  58. package/dist/components/auth/wallet/WalletButton.mjs +84 -0
  59. package/dist/components/auth/wallet/WalletButton.mjs.map +1 -0
  60. package/dist/components/auth/wallet/WalletButtonSkeleton.d.ts +2 -0
  61. package/dist/components/auth/wallet/WalletButtonSkeleton.d.ts.map +1 -0
  62. package/dist/components/auth/wallet/WalletButtonSkeleton.js +22 -0
  63. package/dist/components/auth/wallet/WalletButtonSkeleton.js.map +1 -0
  64. package/dist/components/auth/wallet/WalletButtonSkeleton.mjs +20 -0
  65. package/dist/components/auth/wallet/WalletButtonSkeleton.mjs.map +1 -0
  66. package/dist/components/auth/wallet/WalletConnectAppChainSelector.d.ts +12 -0
  67. package/dist/components/auth/wallet/WalletConnectAppChainSelector.d.ts.map +1 -0
  68. package/dist/components/auth/wallet/WalletConnectAppChainSelector.js +79 -0
  69. package/dist/components/auth/wallet/WalletConnectAppChainSelector.js.map +1 -0
  70. package/dist/components/auth/wallet/WalletConnectAppChainSelector.mjs +102 -0
  71. package/dist/components/auth/wallet/WalletConnectAppChainSelector.mjs.map +1 -0
  72. package/dist/components/auth/wallet/WalletConnectFlow.d.ts +21 -0
  73. package/dist/components/auth/wallet/WalletConnectFlow.d.ts.map +1 -0
  74. package/dist/components/auth/wallet/WalletConnectFlow.js +163 -0
  75. package/dist/components/auth/wallet/WalletConnectFlow.js.map +1 -0
  76. package/dist/components/auth/wallet/WalletConnectFlow.mjs +310 -0
  77. package/dist/components/auth/wallet/WalletConnectFlow.mjs.map +1 -0
  78. package/dist/components/auth/wallet/constants.d.ts +6 -0
  79. package/dist/components/auth/wallet/constants.d.ts.map +1 -0
  80. package/dist/components/auth/wallet/constants.js +14 -0
  81. package/dist/components/auth/wallet/constants.js.map +1 -0
  82. package/dist/components/auth/wallet/constants.mjs +8 -0
  83. package/dist/components/auth/wallet/constants.mjs.map +1 -0
  84. package/dist/components/auth/wallet/utils.d.ts +4 -0
  85. package/dist/components/auth/wallet/utils.d.ts.map +1 -0
  86. package/dist/components/auth/wallet/utils.js +9 -0
  87. package/dist/components/auth/wallet/utils.js.map +1 -0
  88. package/dist/components/auth/wallet/utils.mjs +7 -0
  89. package/dist/components/auth/wallet/utils.mjs.map +1 -0
  90. package/dist/components/design/Buttons.d.ts +1 -0
  91. package/dist/components/design/Buttons.d.ts.map +1 -1
  92. package/dist/components/design/Buttons.js +2 -0
  93. package/dist/components/design/Buttons.js.map +1 -1
  94. package/dist/components/design/Buttons.mjs +2 -0
  95. package/dist/components/design/Buttons.mjs.map +1 -1
  96. package/dist/components/design/ConnectedIndicator.d.ts +6 -0
  97. package/dist/components/design/ConnectedIndicator.d.ts.map +1 -0
  98. package/dist/components/design/ConnectedIndicator.js +20 -0
  99. package/dist/components/design/ConnectedIndicator.js.map +1 -0
  100. package/dist/components/design/ConnectedIndicator.mjs +17 -0
  101. package/dist/components/design/ConnectedIndicator.mjs.map +1 -0
  102. package/dist/components/design/Inputs.d.ts +7 -0
  103. package/dist/components/design/Inputs.d.ts.map +1 -1
  104. package/dist/components/design/Inputs.js +37 -0
  105. package/dist/components/design/Inputs.js.map +1 -1
  106. package/dist/components/design/Inputs.mjs +39 -2
  107. package/dist/components/design/Inputs.mjs.map +1 -1
  108. package/dist/components/design/Svg.d.ts +1 -0
  109. package/dist/components/design/Svg.d.ts.map +1 -1
  110. package/dist/components/user/ConnectWallet.d.ts +1 -1
  111. package/dist/components/user/ConnectWallet.d.ts.map +1 -1
  112. package/dist/components/user/ConnectWallet.js +6 -100
  113. package/dist/components/user/ConnectWallet.js.map +1 -1
  114. package/dist/components/user/ConnectWallet.mjs +5 -183
  115. package/dist/components/user/ConnectWallet.mjs.map +1 -1
  116. package/dist/index.js +4 -0
  117. package/dist/index.js.map +1 -1
  118. package/dist/index.mjs +1 -1
  119. package/dist/providers/TurnkeyProvider.d.ts.map +1 -1
  120. package/dist/providers/TurnkeyProvider.js +2 -1
  121. package/dist/providers/TurnkeyProvider.js.map +1 -1
  122. package/dist/providers/TurnkeyProvider.mjs +4 -3
  123. package/dist/providers/TurnkeyProvider.mjs.map +1 -1
  124. package/dist/providers/WalletConnectProvider.d.ts +23 -0
  125. package/dist/providers/WalletConnectProvider.d.ts.map +1 -0
  126. package/dist/providers/WalletConnectProvider.js +72 -0
  127. package/dist/providers/WalletConnectProvider.js.map +1 -0
  128. package/dist/providers/WalletConnectProvider.mjs +93 -0
  129. package/dist/providers/WalletConnectProvider.mjs.map +1 -0
  130. package/dist/providers/client/Provider.d.ts.map +1 -1
  131. package/dist/providers/client/Provider.js +5 -2
  132. package/dist/providers/client/Provider.js.map +1 -1
  133. package/dist/providers/client/Provider.mjs +5 -2
  134. package/dist/providers/client/Provider.mjs.map +1 -1
  135. package/dist/providers/modal/Provider.d.ts +5 -1
  136. package/dist/providers/modal/Provider.d.ts.map +1 -1
  137. package/dist/providers/modal/Provider.js.map +1 -1
  138. package/dist/providers/modal/Provider.mjs.map +1 -1
  139. package/dist/providers/modal/Root.d.ts.map +1 -1
  140. package/dist/providers/modal/Root.js +2 -0
  141. package/dist/providers/modal/Root.js.map +1 -1
  142. package/dist/providers/modal/Root.mjs +2 -0
  143. package/dist/providers/modal/Root.mjs.map +1 -1
  144. package/dist/providers/theme/Overrides.d.ts +1 -0
  145. package/dist/providers/theme/Overrides.d.ts.map +1 -1
  146. package/dist/providers/theme/Overrides.js +3 -1
  147. package/dist/providers/theme/Overrides.js.map +1 -1
  148. package/dist/providers/theme/Overrides.mjs +3 -1
  149. package/dist/providers/theme/Overrides.mjs.map +1 -1
  150. package/dist/styles.css +1 -1
  151. package/dist/types/base.d.ts +8 -0
  152. package/dist/types/base.d.ts.map +1 -1
  153. package/dist/types/base.js +7 -0
  154. package/dist/types/base.js.map +1 -1
  155. package/dist/types/base.mjs +8 -1
  156. package/dist/types/base.mjs.map +1 -1
  157. package/dist/utils/utils.d.ts +2 -1
  158. package/dist/utils/utils.d.ts.map +1 -1
  159. package/dist/utils/utils.js +5 -0
  160. package/dist/utils/utils.js.map +1 -1
  161. package/dist/utils/utils.mjs +7 -1
  162. package/dist/utils/utils.mjs.map +1 -1
  163. package/package.json +5 -5
  164. package/dist/components/auth/Wallet.d.ts +0 -34
  165. package/dist/components/auth/Wallet.d.ts.map +0 -1
  166. package/dist/components/auth/Wallet.js +0 -514
  167. package/dist/components/auth/Wallet.js.map +0 -1
  168. package/dist/components/auth/Wallet.mjs +0 -615
  169. 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;;;;"}