@turnkey/react-wallet-kit 1.0.0-beta.5 → 1.0.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/README.MD +5 -2
- package/dist/_virtual/_rollupPluginBabelHelpers.mjs +49 -1
- package/dist/_virtual/_rollupPluginBabelHelpers.mjs.map +1 -1
- package/dist/components/auth/Email.d.ts.map +1 -1
- package/dist/components/auth/Email.js +3 -0
- package/dist/components/auth/Email.js.map +1 -1
- package/dist/components/auth/Email.mjs +3 -0
- package/dist/components/auth/Email.mjs.map +1 -1
- package/dist/components/auth/OAuth.d.ts.map +1 -1
- package/dist/components/auth/OAuth.js +1 -0
- package/dist/components/auth/OAuth.js.map +1 -1
- package/dist/components/auth/OAuth.mjs +1 -0
- package/dist/components/auth/OAuth.mjs.map +1 -1
- package/dist/components/auth/OTP.d.ts +1 -0
- package/dist/components/auth/OTP.d.ts.map +1 -1
- package/dist/components/auth/OTP.js +5 -1
- package/dist/components/auth/OTP.js.map +1 -1
- package/dist/components/auth/OTP.mjs +6 -3
- package/dist/components/auth/OTP.mjs.map +1 -1
- package/dist/components/auth/Passkey.d.ts.map +1 -1
- package/dist/components/auth/Passkey.js +2 -0
- package/dist/components/auth/Passkey.js.map +1 -1
- package/dist/components/auth/Passkey.mjs +2 -0
- package/dist/components/auth/Passkey.mjs.map +1 -1
- package/dist/components/auth/Wallet.d.ts +4 -4
- package/dist/components/auth/Wallet.d.ts.map +1 -1
- package/dist/components/auth/Wallet.js +72 -50
- package/dist/components/auth/Wallet.js.map +1 -1
- package/dist/components/auth/Wallet.mjs +78 -57
- package/dist/components/auth/Wallet.mjs.map +1 -1
- package/dist/components/auth/index.d.ts +5 -1
- package/dist/components/auth/index.d.ts.map +1 -1
- package/dist/components/auth/index.js +100 -14
- package/dist/components/auth/index.js.map +1 -1
- package/dist/components/auth/index.mjs +187 -84
- package/dist/components/auth/index.mjs.map +1 -1
- package/dist/components/design/Buttons.d.ts +2 -0
- package/dist/components/design/Buttons.d.ts.map +1 -1
- package/dist/components/design/Buttons.js +8 -2
- package/dist/components/design/Buttons.js.map +1 -1
- package/dist/components/design/Buttons.mjs +9 -3
- package/dist/components/design/Buttons.mjs.map +1 -1
- package/dist/components/export/Export.d.ts +2 -1
- package/dist/components/export/Export.d.ts.map +1 -1
- package/dist/components/export/Export.js +8 -6
- package/dist/components/export/Export.js.map +1 -1
- package/dist/components/export/Export.mjs +8 -6
- package/dist/components/export/Export.mjs.map +1 -1
- package/dist/components/export/ExportWarning.d.ts +2 -1
- package/dist/components/export/ExportWarning.d.ts.map +1 -1
- package/dist/components/export/ExportWarning.js +4 -2
- package/dist/components/export/ExportWarning.js.map +1 -1
- package/dist/components/export/ExportWarning.mjs +4 -2
- package/dist/components/export/ExportWarning.mjs.map +1 -1
- package/dist/components/import/Import.d.ts +7 -3
- package/dist/components/import/Import.d.ts.map +1 -1
- package/dist/components/import/Import.js +77 -37
- package/dist/components/import/Import.js.map +1 -1
- package/dist/components/import/Import.mjs +120 -55
- package/dist/components/import/Import.mjs.map +1 -1
- package/dist/components/sign/Message.d.ts.map +1 -1
- package/dist/components/sign/Message.js +1 -0
- package/dist/components/sign/Message.js.map +1 -1
- package/dist/components/sign/Message.mjs +1 -0
- package/dist/components/sign/Message.mjs.map +1 -1
- package/dist/components/user/ConnectWallet.d.ts +8 -0
- package/dist/components/user/ConnectWallet.d.ts.map +1 -0
- package/dist/components/user/{LinkWallet.js → ConnectWallet.js} +18 -18
- package/dist/components/user/ConnectWallet.js.map +1 -0
- package/dist/components/user/{LinkWallet.mjs → ConnectWallet.mjs} +25 -25
- package/dist/components/user/ConnectWallet.mjs.map +1 -0
- package/dist/components/user/RemovePasskey.d.ts.map +1 -1
- package/dist/components/user/RemovePasskey.js +1 -0
- package/dist/components/user/RemovePasskey.js.map +1 -1
- package/dist/components/user/RemovePasskey.mjs +1 -0
- package/dist/components/user/RemovePasskey.mjs.map +1 -1
- package/dist/index.js +13 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2 -1
- package/dist/index.mjs.map +1 -1
- package/dist/providers/client/Provider.d.ts +3 -3
- package/dist/providers/client/Provider.d.ts.map +1 -1
- package/dist/providers/client/Provider.js +760 -149
- package/dist/providers/client/Provider.js.map +1 -1
- package/dist/providers/client/Provider.mjs +2474 -1624
- package/dist/providers/client/Provider.mjs.map +1 -1
- package/dist/providers/client/Types.d.ts +116 -11
- package/dist/providers/client/Types.d.ts.map +1 -1
- package/dist/providers/client/Types.js.map +1 -1
- package/dist/providers/client/Types.mjs.map +1 -1
- package/dist/providers/modal/Provider.js +1 -1
- package/dist/providers/modal/Provider.mjs +1 -1
- package/dist/styles.css +1 -1
- package/dist/tests/timers-test.d.ts +2 -0
- package/dist/tests/timers-test.d.ts.map +1 -0
- package/dist/tests/utils-test.d.ts +2 -0
- package/dist/tests/utils-test.d.ts.map +1 -0
- package/dist/types/base.d.ts +31 -3
- package/dist/types/base.d.ts.map +1 -1
- package/dist/types/base.js +23 -0
- package/dist/types/base.js.map +1 -1
- package/dist/types/base.mjs +19 -1
- package/dist/types/base.mjs.map +1 -1
- package/dist/utils/timers.d.ts +73 -0
- package/dist/utils/timers.d.ts.map +1 -0
- package/dist/utils/timers.js +133 -0
- package/dist/utils/timers.js.map +1 -0
- package/dist/utils/timers.mjs +142 -0
- package/dist/utils/timers.mjs.map +1 -0
- package/dist/{utils.d.ts → utils/utils.d.ts} +8 -3
- package/dist/utils/utils.d.ts.map +1 -0
- package/dist/{utils.js → utils/utils.js} +12 -3
- package/dist/utils/utils.js.map +1 -0
- package/dist/{utils.mjs → utils/utils.mjs} +12 -5
- package/dist/utils/utils.mjs.map +1 -0
- package/package.json +6 -5
- package/dist/components/user/LinkWallet.d.ts +0 -8
- package/dist/components/user/LinkWallet.d.ts.map +0 -1
- package/dist/components/user/LinkWallet.js.map +0 -1
- package/dist/components/user/LinkWallet.mjs.map +0 -1
- package/dist/utils.d.ts.map +0 -1
- package/dist/utils.js.map +0 -1
- package/dist/utils.mjs.map +0 -1
|
@@ -11,6 +11,7 @@ var react$1 = require('@headlessui/react');
|
|
|
11
11
|
var core = require('@turnkey/core');
|
|
12
12
|
var Success = require('../design/Success.js');
|
|
13
13
|
var clsx = require('clsx');
|
|
14
|
+
var base = require('../../types/base.js');
|
|
14
15
|
|
|
15
16
|
const TurnkeyImportIframeContainerId = "turnkey-import-iframe-container-id";
|
|
16
17
|
const TurnkeyIframeElementId = "turnkey-default-iframe-element-id";
|
|
@@ -20,20 +21,27 @@ const iconBackgroundLight = "#e5e7eb";
|
|
|
20
21
|
const iconBackgroundDark = "#333336";
|
|
21
22
|
const iconTextLight = "#828282";
|
|
22
23
|
const iconTextDark = "#a3a3a5";
|
|
23
|
-
function ImportComponent(
|
|
24
|
+
function ImportComponent(props) {
|
|
24
25
|
const {
|
|
26
|
+
importType,
|
|
27
|
+
curve = "CURVE_SECP256K1",
|
|
28
|
+
addressFormats = ["ADDRESS_FORMAT_ETHEREUM"],
|
|
25
29
|
onSuccess,
|
|
26
30
|
onError,
|
|
27
31
|
defaultWalletAccounts,
|
|
28
32
|
successPageDuration,
|
|
29
33
|
stampWith
|
|
30
|
-
} =
|
|
34
|
+
} = props;
|
|
31
35
|
const {
|
|
32
36
|
config,
|
|
33
37
|
session,
|
|
34
38
|
importWallet,
|
|
39
|
+
importPrivateKey,
|
|
35
40
|
httpClient
|
|
36
41
|
} = Hook.useTurnkey();
|
|
42
|
+
if (!config) {
|
|
43
|
+
throw new sdkTypes.TurnkeyError("Turnkey SDK is not properly configured. Please check your configuration.", sdkTypes.TurnkeyErrorCodes.CONFIG_NOT_INITIALIZED);
|
|
44
|
+
}
|
|
37
45
|
const [walletName, setWalletName] = react.useState("");
|
|
38
46
|
const [isLoading, setIsLoading] = react.useState(false);
|
|
39
47
|
const [error, setError] = react.useState(null);
|
|
@@ -42,7 +50,6 @@ function ImportComponent(params) {
|
|
|
42
50
|
setShaking(true);
|
|
43
51
|
setTimeout(() => setShaking(false), 250);
|
|
44
52
|
};
|
|
45
|
-
const apiBaseUrl = config?.apiBaseUrl;
|
|
46
53
|
const importIframeUrl = config?.importIframeUrl;
|
|
47
54
|
const {
|
|
48
55
|
closeModal,
|
|
@@ -50,9 +57,8 @@ function ImportComponent(params) {
|
|
|
50
57
|
isMobile
|
|
51
58
|
} = Hook$1.useModal();
|
|
52
59
|
const [importIframeClient, setImportIframeClient] = react.useState(null);
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
}
|
|
60
|
+
const subtitle = importType === base.ImportType.Wallet ? "Enter your seed phrase. Seed phrases are typically 12-24 words." : importType === base.ImportType.PrivateKey ? "Enter your private key." : "";
|
|
61
|
+
const placeholder = importType === base.ImportType.Wallet ? "Enter your wallet name" : importType === base.ImportType.PrivateKey ? "Enter your private key name" : "";
|
|
56
62
|
react.useEffect(() => {
|
|
57
63
|
const initIframe = async () => {
|
|
58
64
|
try {
|
|
@@ -114,42 +120,73 @@ function ImportComponent(params) {
|
|
|
114
120
|
if (!importIframeClient) {
|
|
115
121
|
throw new sdkTypes.TurnkeyError("Import iframe client not initialized", sdkTypes.TurnkeyErrorCodes.INTERNAL_ERROR);
|
|
116
122
|
}
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
123
|
+
let response;
|
|
124
|
+
switch (importType) {
|
|
125
|
+
case base.ImportType.Wallet:
|
|
126
|
+
const initWalletResult = await httpClient?.initImportWallet({
|
|
127
|
+
organizationId: session?.organizationId,
|
|
128
|
+
userId: session?.userId
|
|
129
|
+
});
|
|
130
|
+
if (!initWalletResult || !initWalletResult.importBundle) {
|
|
131
|
+
throw new sdkTypes.TurnkeyError("Failed to retrieve import bundle", sdkTypes.TurnkeyErrorCodes.IMPORT_WALLET_ERROR);
|
|
132
|
+
}
|
|
133
|
+
const injectedWallet = await importIframeClient.injectImportBundle(initWalletResult.importBundle, session?.organizationId, session?.userId);
|
|
134
|
+
if (!injectedWallet) {
|
|
135
|
+
throw new sdkTypes.TurnkeyError("Failed to inject import bundle", sdkTypes.TurnkeyErrorCodes.IMPORT_WALLET_ERROR);
|
|
136
|
+
}
|
|
137
|
+
const encryptedWalletBundle = await importIframeClient.extractWalletEncryptedBundle();
|
|
138
|
+
if (!encryptedWalletBundle || encryptedWalletBundle.trim() === "") {
|
|
139
|
+
throw new sdkTypes.TurnkeyError("Encrypted bundle is empty", sdkTypes.TurnkeyErrorCodes.IMPORT_WALLET_ERROR);
|
|
140
|
+
}
|
|
141
|
+
let accounts = [];
|
|
142
|
+
if (Array.isArray(defaultWalletAccounts) && defaultWalletAccounts.length > 0 && defaultWalletAccounts[0]?.addressFormat === undefined) {
|
|
143
|
+
accounts = core.generateWalletAccountsFromAddressFormat({
|
|
144
|
+
addresses: defaultWalletAccounts
|
|
145
|
+
});
|
|
146
|
+
} else if (Array.isArray(defaultWalletAccounts)) {
|
|
147
|
+
accounts = defaultWalletAccounts;
|
|
148
|
+
}
|
|
149
|
+
response = await importWallet({
|
|
150
|
+
walletName: walletName,
|
|
151
|
+
accounts,
|
|
152
|
+
encryptedBundle: encryptedWalletBundle,
|
|
153
|
+
stampWith
|
|
154
|
+
});
|
|
155
|
+
break;
|
|
156
|
+
case base.ImportType.PrivateKey:
|
|
157
|
+
const initPrivateKeyResult = await httpClient?.initImportPrivateKey({
|
|
158
|
+
organizationId: session?.organizationId,
|
|
159
|
+
userId: session?.userId
|
|
160
|
+
});
|
|
161
|
+
if (!initPrivateKeyResult || !initPrivateKeyResult.importBundle) {
|
|
162
|
+
throw new sdkTypes.TurnkeyError("Failed to retrieve import bundle", sdkTypes.TurnkeyErrorCodes.IMPORT_WALLET_ERROR);
|
|
163
|
+
}
|
|
164
|
+
const injectedKey = await importIframeClient.injectImportBundle(initPrivateKeyResult.importBundle, session?.organizationId, session?.userId);
|
|
165
|
+
if (!injectedKey) {
|
|
166
|
+
throw new sdkTypes.TurnkeyError("Failed to inject import bundle", sdkTypes.TurnkeyErrorCodes.IMPORT_WALLET_ERROR);
|
|
167
|
+
}
|
|
168
|
+
const encryptedKeyBundle = await importIframeClient.extractKeyEncryptedBundle(curve === "CURVE_ED25519" ? iframeStamper.KeyFormat.Solana : iframeStamper.KeyFormat.Hexadecimal);
|
|
169
|
+
if (!encryptedKeyBundle || encryptedKeyBundle.trim() === "") {
|
|
170
|
+
throw new sdkTypes.TurnkeyError("Encrypted bundle is empty", sdkTypes.TurnkeyErrorCodes.IMPORT_WALLET_ERROR);
|
|
171
|
+
}
|
|
172
|
+
response = await importPrivateKey({
|
|
173
|
+
addressFormats,
|
|
174
|
+
curve,
|
|
175
|
+
privateKeyName: walletName,
|
|
176
|
+
encryptedBundle: encryptedKeyBundle,
|
|
177
|
+
stampWith
|
|
178
|
+
});
|
|
179
|
+
break;
|
|
180
|
+
default:
|
|
181
|
+
throw new sdkTypes.TurnkeyError("Invalid import type", sdkTypes.TurnkeyErrorCodes.IMPORT_WALLET_ERROR);
|
|
139
182
|
}
|
|
140
|
-
const response = await importWallet({
|
|
141
|
-
walletName: walletName,
|
|
142
|
-
accounts,
|
|
143
|
-
encryptedBundle,
|
|
144
|
-
stampWith
|
|
145
|
-
});
|
|
146
183
|
if (response) {
|
|
147
184
|
onSuccess(response);
|
|
148
185
|
if (successPageDuration && successPageDuration !== 0) {
|
|
149
186
|
pushPage({
|
|
150
187
|
key: "success",
|
|
151
188
|
content: jsxRuntime.jsx(Success.SuccessPage, {
|
|
152
|
-
text: "Wallet imported successfully!",
|
|
189
|
+
text: importType === base.ImportType.Wallet ? "Wallet imported successfully!" : importType === base.ImportType.PrivateKey ? "Private key imported successfully!" : "Success!",
|
|
153
190
|
duration: successPageDuration,
|
|
154
191
|
onComplete: () => {
|
|
155
192
|
handleImportModalClose();
|
|
@@ -181,7 +218,7 @@ function ImportComponent(params) {
|
|
|
181
218
|
className: clsx("flex flex-col items-center pt-4", isMobile ? "w-full" : "w-[21rem]"),
|
|
182
219
|
children: [jsxRuntime.jsx("p", {
|
|
183
220
|
className: "text-sm text-icon-text-light dark:text-icon-text-dark",
|
|
184
|
-
children:
|
|
221
|
+
children: subtitle
|
|
185
222
|
}), jsxRuntime.jsx("div", {
|
|
186
223
|
id: TurnkeyImportIframeContainerId,
|
|
187
224
|
style: {
|
|
@@ -200,17 +237,20 @@ function ImportComponent(params) {
|
|
|
200
237
|
className: `transition-all ${shaking ? "animate-shake" : ""}`
|
|
201
238
|
}), jsxRuntime.jsx(react$1.Input, {
|
|
202
239
|
type: "text",
|
|
203
|
-
|
|
240
|
+
"data-testid": "import-wallet-name-input",
|
|
241
|
+
placeholder: placeholder,
|
|
204
242
|
value: walletName,
|
|
205
243
|
onChange: e => setWalletName(e.target.value),
|
|
206
244
|
className: "placeholder:text-icon-text-light dark:placeholder:text-icon-text-dark w-full my-2 py-3 px-3 rounded-md text-inherit bg-icon-background-light dark:bg-icon-background-dark border border-modal-background-dark/20 dark:border-modal-background-light/20 focus:outline-primary-light focus:dark:outline-primary-dark focus:outline-[1px] focus:outline-offset-0 box-border"
|
|
207
245
|
}), jsxRuntime.jsx(Buttons.ActionButton, {
|
|
246
|
+
name: "import-button",
|
|
208
247
|
loading: isLoading,
|
|
209
248
|
spinnerClassName: "text-primary-text-light dark:text-primary-text-dark",
|
|
210
249
|
onClick: handleImport,
|
|
211
250
|
className: "bg-primary-light dark:bg-primary-dark text-primary-text-light dark:text-primary-text-dark",
|
|
212
251
|
children: "Import"
|
|
213
252
|
}), jsxRuntime.jsxs("p", {
|
|
253
|
+
"data-testid": "import-error-message",
|
|
214
254
|
className: clsx("text-sm text-red-500 transition-opacity delay-75 line-clamp-2 w-full", error ? "opacity-100 pointer-events-auto mt-2" : "opacity-0 pointer-events-none absolute"),
|
|
215
255
|
children: [error?.message, ":", " ", error?.cause instanceof sdkTypes.TurnkeyError ? error?.cause.message : error?.cause?.toString() || "Unknown error"]
|
|
216
256
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Import.js","sources":["../../../src/components/import/Import.tsx"],"sourcesContent":[null],"names":["TurnkeyImportIframeContainerId","TurnkeyIframeElementId","TurnkeyIframeClassNames","iconBackgroundLight","iconBackgroundDark","iconTextLight","iconTextDark","ImportComponent","params","onSuccess","onError","defaultWalletAccounts","successPageDuration","stampWith","config","session","importWallet","httpClient","useTurnkey","walletName","setWalletName","useState","isLoading","setIsLoading","error","setError","shaking","setShaking","shakeInput","setTimeout","apiBaseUrl","importIframeUrl","closeModal","pushPage","isMobile","useModal","importIframeClient","setImportIframeClient","TurnkeyError","useEffect","initIframe","newImportIframeClient","IframeStamper","iframeUrl","iframeElementId","iframeContainer","document","getElementById","init","applySettings","styles","fontSize","backgroundColor","ui","darkMode","colors","dark","iconBackground","light","color","iconText","TurnkeyErrorCodes","INTERNAL_ERROR","existingIframe","iframeElement","className","handleImportModalClose","reapplyIframeStyles","remove","handleImport","initResult","initImportWallet","organizationId","userId","importBundle","IMPORT_WALLET_ERROR","injected","injectImportBundle","encryptedBundle","extractWalletEncryptedBundle","trim","accounts","Array","isArray","length","addressFormat","undefined","generateWalletAccountsFromAddressFormat","addresses","response","key","content","_jsx","SuccessPage","text","duration","onComplete","preventBack","showTitle","clear","_jsxs","clsx","children","id","style","height","overflow","display","width","boxSizing","padding","borderStyle","borderWidth","borderRadius","borderColor","Input","type","placeholder","value","onChange","e","target","ActionButton","loading","spinnerClassName","onClick","message","cause","toString"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Import.js","sources":["../../../src/components/import/Import.tsx"],"sourcesContent":[null],"names":["TurnkeyImportIframeContainerId","TurnkeyIframeElementId","TurnkeyIframeClassNames","iconBackgroundLight","iconBackgroundDark","iconTextLight","iconTextDark","ImportComponent","props","importType","curve","addressFormats","onSuccess","onError","defaultWalletAccounts","successPageDuration","stampWith","config","session","importWallet","importPrivateKey","httpClient","useTurnkey","TurnkeyError","TurnkeyErrorCodes","CONFIG_NOT_INITIALIZED","walletName","setWalletName","useState","isLoading","setIsLoading","error","setError","shaking","setShaking","shakeInput","setTimeout","importIframeUrl","closeModal","pushPage","isMobile","useModal","importIframeClient","setImportIframeClient","subtitle","ImportType","Wallet","PrivateKey","placeholder","useEffect","initIframe","newImportIframeClient","IframeStamper","iframeUrl","iframeElementId","iframeContainer","document","getElementById","init","applySettings","styles","fontSize","backgroundColor","ui","darkMode","colors","dark","iconBackground","light","color","iconText","INTERNAL_ERROR","existingIframe","iframeElement","className","handleImportModalClose","reapplyIframeStyles","remove","handleImport","response","initWalletResult","initImportWallet","organizationId","userId","importBundle","IMPORT_WALLET_ERROR","injectedWallet","injectImportBundle","encryptedWalletBundle","extractWalletEncryptedBundle","trim","accounts","Array","isArray","length","addressFormat","undefined","generateWalletAccountsFromAddressFormat","addresses","encryptedBundle","initPrivateKeyResult","initImportPrivateKey","injectedKey","encryptedKeyBundle","extractKeyEncryptedBundle","KeyFormat","Solana","Hexadecimal","privateKeyName","key","content","_jsx","SuccessPage","text","duration","onComplete","preventBack","showTitle","clear","_jsxs","clsx","children","id","style","height","overflow","display","width","boxSizing","padding","borderStyle","borderWidth","borderRadius","borderColor","Input","type","value","onChange","e","target","ActionButton","name","loading","spinnerClassName","onClick","message","cause","toString"],"mappings":"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"}
|
|
@@ -3,13 +3,14 @@ import { jsxs, jsx } from 'react/jsx-runtime';
|
|
|
3
3
|
import { useState, useEffect } from 'react';
|
|
4
4
|
import { useModal } from '../../providers/modal/Hook.mjs';
|
|
5
5
|
import { useTurnkey } from '../../providers/client/Hook.mjs';
|
|
6
|
-
import { IframeStamper } from '@turnkey/iframe-stamper';
|
|
6
|
+
import { IframeStamper, KeyFormat } from '@turnkey/iframe-stamper';
|
|
7
7
|
import { TurnkeyError, TurnkeyErrorCodes } from '@turnkey/sdk-types';
|
|
8
8
|
import { ActionButton } from '../design/Buttons.mjs';
|
|
9
9
|
import { Input } from '@headlessui/react';
|
|
10
10
|
import { generateWalletAccountsFromAddressFormat } from '@turnkey/core';
|
|
11
11
|
import { SuccessPage } from '../design/Success.mjs';
|
|
12
12
|
import clsx from 'clsx';
|
|
13
|
+
import { ImportType } from '../../types/base.mjs';
|
|
13
14
|
|
|
14
15
|
var TurnkeyImportIframeContainerId = "turnkey-import-iframe-container-id";
|
|
15
16
|
var TurnkeyIframeElementId = "turnkey-default-iframe-element-id";
|
|
@@ -19,18 +20,27 @@ var iconBackgroundLight = "#e5e7eb";
|
|
|
19
20
|
var iconBackgroundDark = "#333336";
|
|
20
21
|
var iconTextLight = "#828282";
|
|
21
22
|
var iconTextDark = "#a3a3a5";
|
|
22
|
-
function ImportComponent(
|
|
23
|
+
function ImportComponent(props) {
|
|
23
24
|
var _config$ui11, _config$ui12, _config$ui12$colors, _config$ui12$colors$d, _config$ui13, _config$ui13$colors, _config$ui13$colors$l, _config$ui14, _config$ui15, _config$ui15$colors, _config$ui15$colors$d, _config$ui16, _config$ui16$colors, _config$ui16$colors$l, _error$cause;
|
|
24
|
-
var
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
25
|
+
var importType = props.importType,
|
|
26
|
+
_props$curve = props.curve,
|
|
27
|
+
curve = _props$curve === void 0 ? "CURVE_SECP256K1" : _props$curve,
|
|
28
|
+
_props$addressFormats = props.addressFormats,
|
|
29
|
+
addressFormats = _props$addressFormats === void 0 ? ["ADDRESS_FORMAT_ETHEREUM"] : _props$addressFormats,
|
|
30
|
+
onSuccess = props.onSuccess,
|
|
31
|
+
onError = props.onError,
|
|
32
|
+
defaultWalletAccounts = props.defaultWalletAccounts,
|
|
33
|
+
successPageDuration = props.successPageDuration,
|
|
34
|
+
stampWith = props.stampWith;
|
|
29
35
|
var _useTurnkey = useTurnkey(),
|
|
30
36
|
config = _useTurnkey.config,
|
|
31
37
|
session = _useTurnkey.session,
|
|
32
38
|
importWallet = _useTurnkey.importWallet,
|
|
39
|
+
importPrivateKey = _useTurnkey.importPrivateKey,
|
|
33
40
|
httpClient = _useTurnkey.httpClient;
|
|
41
|
+
if (!config) {
|
|
42
|
+
throw new TurnkeyError("Turnkey SDK is not properly configured. Please check your configuration.", TurnkeyErrorCodes.CONFIG_NOT_INITIALIZED);
|
|
43
|
+
}
|
|
34
44
|
var _useState = useState(""),
|
|
35
45
|
_useState2 = _slicedToArray(_useState, 2),
|
|
36
46
|
walletName = _useState2[0],
|
|
@@ -53,7 +63,6 @@ function ImportComponent(params) {
|
|
|
53
63
|
return setShaking(false);
|
|
54
64
|
}, 250);
|
|
55
65
|
};
|
|
56
|
-
var apiBaseUrl = config === null || config === void 0 ? void 0 : config.apiBaseUrl;
|
|
57
66
|
var importIframeUrl = config === null || config === void 0 ? void 0 : config.importIframeUrl;
|
|
58
67
|
var _useModal = useModal(),
|
|
59
68
|
closeModal = _useModal.closeModal,
|
|
@@ -63,9 +72,8 @@ function ImportComponent(params) {
|
|
|
63
72
|
_useState0 = _slicedToArray(_useState9, 2),
|
|
64
73
|
importIframeClient = _useState0[0],
|
|
65
74
|
setImportIframeClient = _useState0[1];
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
}
|
|
75
|
+
var subtitle = importType === ImportType.Wallet ? "Enter your seed phrase. Seed phrases are typically 12-24 words." : importType === ImportType.PrivateKey ? "Enter your private key." : "";
|
|
76
|
+
var placeholder = importType === ImportType.Wallet ? "Enter your wallet name" : importType === ImportType.PrivateKey ? "Enter your private key name" : "";
|
|
69
77
|
useEffect(function () {
|
|
70
78
|
var initIframe = /*#__PURE__*/function () {
|
|
71
79
|
var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
@@ -162,7 +170,8 @@ function ImportComponent(params) {
|
|
|
162
170
|
}
|
|
163
171
|
function _handleImport() {
|
|
164
172
|
_handleImport = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
|
|
165
|
-
var _defaultWalletAccount
|
|
173
|
+
var _defaultWalletAccount;
|
|
174
|
+
var response, initWalletResult, injectedWallet, encryptedWalletBundle, accounts, initPrivateKeyResult, injectedKey, encryptedKeyBundle;
|
|
166
175
|
return _regeneratorRuntime().wrap(function _callee3$(_context3) {
|
|
167
176
|
while (1) switch (_context3.prev = _context3.next) {
|
|
168
177
|
case 0:
|
|
@@ -174,39 +183,43 @@ function ImportComponent(params) {
|
|
|
174
183
|
}
|
|
175
184
|
throw new TurnkeyError("Import iframe client not initialized", TurnkeyErrorCodes.INTERNAL_ERROR);
|
|
176
185
|
case 4:
|
|
177
|
-
_context3.
|
|
186
|
+
_context3.t0 = importType;
|
|
187
|
+
_context3.next = _context3.t0 === ImportType.Wallet ? 7 : _context3.t0 === ImportType.PrivateKey ? 28 : 47;
|
|
188
|
+
break;
|
|
189
|
+
case 7:
|
|
190
|
+
_context3.next = 9;
|
|
178
191
|
return httpClient === null || httpClient === void 0 ? void 0 : httpClient.initImportWallet({
|
|
179
192
|
organizationId: session === null || session === void 0 ? void 0 : session.organizationId,
|
|
180
193
|
userId: session === null || session === void 0 ? void 0 : session.userId
|
|
181
194
|
});
|
|
182
|
-
case
|
|
183
|
-
|
|
184
|
-
if (!(!
|
|
185
|
-
_context3.next =
|
|
195
|
+
case 9:
|
|
196
|
+
initWalletResult = _context3.sent;
|
|
197
|
+
if (!(!initWalletResult || !initWalletResult.importBundle)) {
|
|
198
|
+
_context3.next = 12;
|
|
186
199
|
break;
|
|
187
200
|
}
|
|
188
201
|
throw new TurnkeyError("Failed to retrieve import bundle", TurnkeyErrorCodes.IMPORT_WALLET_ERROR);
|
|
189
|
-
case
|
|
190
|
-
_context3.next =
|
|
191
|
-
return importIframeClient.injectImportBundle(
|
|
192
|
-
case
|
|
193
|
-
|
|
194
|
-
if (
|
|
195
|
-
_context3.next =
|
|
202
|
+
case 12:
|
|
203
|
+
_context3.next = 14;
|
|
204
|
+
return importIframeClient.injectImportBundle(initWalletResult.importBundle, session === null || session === void 0 ? void 0 : session.organizationId, session === null || session === void 0 ? void 0 : session.userId);
|
|
205
|
+
case 14:
|
|
206
|
+
injectedWallet = _context3.sent;
|
|
207
|
+
if (injectedWallet) {
|
|
208
|
+
_context3.next = 17;
|
|
196
209
|
break;
|
|
197
210
|
}
|
|
198
211
|
throw new TurnkeyError("Failed to inject import bundle", TurnkeyErrorCodes.IMPORT_WALLET_ERROR);
|
|
199
|
-
case
|
|
200
|
-
_context3.next =
|
|
212
|
+
case 17:
|
|
213
|
+
_context3.next = 19;
|
|
201
214
|
return importIframeClient.extractWalletEncryptedBundle();
|
|
202
|
-
case
|
|
203
|
-
|
|
204
|
-
if (!(!
|
|
205
|
-
_context3.next =
|
|
215
|
+
case 19:
|
|
216
|
+
encryptedWalletBundle = _context3.sent;
|
|
217
|
+
if (!(!encryptedWalletBundle || encryptedWalletBundle.trim() === "")) {
|
|
218
|
+
_context3.next = 22;
|
|
206
219
|
break;
|
|
207
220
|
}
|
|
208
221
|
throw new TurnkeyError("Encrypted bundle is empty", TurnkeyErrorCodes.IMPORT_WALLET_ERROR);
|
|
209
|
-
case
|
|
222
|
+
case 22:
|
|
210
223
|
accounts = [];
|
|
211
224
|
if (Array.isArray(defaultWalletAccounts) && defaultWalletAccounts.length > 0 && ((_defaultWalletAccount = defaultWalletAccounts[0]) === null || _defaultWalletAccount === void 0 ? void 0 : _defaultWalletAccount.addressFormat) === undefined) {
|
|
212
225
|
accounts = generateWalletAccountsFromAddressFormat({
|
|
@@ -215,17 +228,66 @@ function ImportComponent(params) {
|
|
|
215
228
|
} else if (Array.isArray(defaultWalletAccounts)) {
|
|
216
229
|
accounts = defaultWalletAccounts;
|
|
217
230
|
}
|
|
218
|
-
_context3.next =
|
|
231
|
+
_context3.next = 26;
|
|
219
232
|
return importWallet({
|
|
220
233
|
walletName: walletName,
|
|
221
234
|
accounts: accounts,
|
|
222
|
-
encryptedBundle:
|
|
235
|
+
encryptedBundle: encryptedWalletBundle,
|
|
236
|
+
stampWith: stampWith
|
|
237
|
+
});
|
|
238
|
+
case 26:
|
|
239
|
+
response = _context3.sent;
|
|
240
|
+
return _context3.abrupt("break", 48);
|
|
241
|
+
case 28:
|
|
242
|
+
_context3.next = 30;
|
|
243
|
+
return httpClient === null || httpClient === void 0 ? void 0 : httpClient.initImportPrivateKey({
|
|
244
|
+
organizationId: session === null || session === void 0 ? void 0 : session.organizationId,
|
|
245
|
+
userId: session === null || session === void 0 ? void 0 : session.userId
|
|
246
|
+
});
|
|
247
|
+
case 30:
|
|
248
|
+
initPrivateKeyResult = _context3.sent;
|
|
249
|
+
if (!(!initPrivateKeyResult || !initPrivateKeyResult.importBundle)) {
|
|
250
|
+
_context3.next = 33;
|
|
251
|
+
break;
|
|
252
|
+
}
|
|
253
|
+
throw new TurnkeyError("Failed to retrieve import bundle", TurnkeyErrorCodes.IMPORT_WALLET_ERROR);
|
|
254
|
+
case 33:
|
|
255
|
+
_context3.next = 35;
|
|
256
|
+
return importIframeClient.injectImportBundle(initPrivateKeyResult.importBundle, session === null || session === void 0 ? void 0 : session.organizationId, session === null || session === void 0 ? void 0 : session.userId);
|
|
257
|
+
case 35:
|
|
258
|
+
injectedKey = _context3.sent;
|
|
259
|
+
if (injectedKey) {
|
|
260
|
+
_context3.next = 38;
|
|
261
|
+
break;
|
|
262
|
+
}
|
|
263
|
+
throw new TurnkeyError("Failed to inject import bundle", TurnkeyErrorCodes.IMPORT_WALLET_ERROR);
|
|
264
|
+
case 38:
|
|
265
|
+
_context3.next = 40;
|
|
266
|
+
return importIframeClient.extractKeyEncryptedBundle(curve === "CURVE_ED25519" ? KeyFormat.Solana : KeyFormat.Hexadecimal);
|
|
267
|
+
case 40:
|
|
268
|
+
encryptedKeyBundle = _context3.sent;
|
|
269
|
+
if (!(!encryptedKeyBundle || encryptedKeyBundle.trim() === "")) {
|
|
270
|
+
_context3.next = 43;
|
|
271
|
+
break;
|
|
272
|
+
}
|
|
273
|
+
throw new TurnkeyError("Encrypted bundle is empty", TurnkeyErrorCodes.IMPORT_WALLET_ERROR);
|
|
274
|
+
case 43:
|
|
275
|
+
_context3.next = 45;
|
|
276
|
+
return importPrivateKey({
|
|
277
|
+
addressFormats: addressFormats,
|
|
278
|
+
curve: curve,
|
|
279
|
+
privateKeyName: walletName,
|
|
280
|
+
encryptedBundle: encryptedKeyBundle,
|
|
223
281
|
stampWith: stampWith
|
|
224
282
|
});
|
|
225
|
-
case
|
|
283
|
+
case 45:
|
|
226
284
|
response = _context3.sent;
|
|
285
|
+
return _context3.abrupt("break", 48);
|
|
286
|
+
case 47:
|
|
287
|
+
throw new TurnkeyError("Invalid import type", TurnkeyErrorCodes.IMPORT_WALLET_ERROR);
|
|
288
|
+
case 48:
|
|
227
289
|
if (!response) {
|
|
228
|
-
_context3.next =
|
|
290
|
+
_context3.next = 54;
|
|
229
291
|
break;
|
|
230
292
|
}
|
|
231
293
|
onSuccess(response);
|
|
@@ -233,7 +295,7 @@ function ImportComponent(params) {
|
|
|
233
295
|
pushPage({
|
|
234
296
|
key: "success",
|
|
235
297
|
content: jsx(SuccessPage, {
|
|
236
|
-
text: "Wallet imported successfully!",
|
|
298
|
+
text: importType === ImportType.Wallet ? "Wallet imported successfully!" : importType === ImportType.PrivateKey ? "Private key imported successfully!" : "Success!",
|
|
237
299
|
duration: successPageDuration,
|
|
238
300
|
onComplete: function onComplete() {
|
|
239
301
|
handleImportModalClose();
|
|
@@ -248,32 +310,32 @@ function ImportComponent(params) {
|
|
|
248
310
|
closeModal();
|
|
249
311
|
}
|
|
250
312
|
handleImportModalClose();
|
|
251
|
-
_context3.next =
|
|
313
|
+
_context3.next = 57;
|
|
252
314
|
break;
|
|
253
|
-
case
|
|
254
|
-
_context3.next =
|
|
315
|
+
case 54:
|
|
316
|
+
_context3.next = 56;
|
|
255
317
|
return importIframeClient.clear();
|
|
256
|
-
case
|
|
318
|
+
case 56:
|
|
257
319
|
throw new TurnkeyError("Failed to import wallet", TurnkeyErrorCodes.IMPORT_WALLET_ERROR);
|
|
258
|
-
case
|
|
259
|
-
_context3.next =
|
|
320
|
+
case 57:
|
|
321
|
+
_context3.next = 65;
|
|
260
322
|
break;
|
|
261
|
-
case
|
|
262
|
-
_context3.prev =
|
|
263
|
-
_context3.
|
|
323
|
+
case 59:
|
|
324
|
+
_context3.prev = 59;
|
|
325
|
+
_context3.t1 = _context3["catch"](1);
|
|
264
326
|
shakeInput();
|
|
265
|
-
setError(_context3.
|
|
266
|
-
if (_context3.
|
|
267
|
-
throw new TurnkeyError("Error importing wallet", TurnkeyErrorCodes.IMPORT_WALLET_ERROR, _context3.
|
|
268
|
-
case
|
|
269
|
-
_context3.prev =
|
|
327
|
+
setError(_context3.t1 instanceof TurnkeyError ? _context3.t1 : new TurnkeyError("Error importing wallet", TurnkeyErrorCodes.IMPORT_WALLET_ERROR, _context3.t1));
|
|
328
|
+
if (_context3.t1 instanceof TurnkeyError) onError(_context3.t1);
|
|
329
|
+
throw new TurnkeyError("Error importing wallet", TurnkeyErrorCodes.IMPORT_WALLET_ERROR, _context3.t1);
|
|
330
|
+
case 65:
|
|
331
|
+
_context3.prev = 65;
|
|
270
332
|
setIsLoading(false);
|
|
271
|
-
return _context3.finish(
|
|
272
|
-
case
|
|
333
|
+
return _context3.finish(65);
|
|
334
|
+
case 68:
|
|
273
335
|
case "end":
|
|
274
336
|
return _context3.stop();
|
|
275
337
|
}
|
|
276
|
-
}, _callee3, null, [[1,
|
|
338
|
+
}, _callee3, null, [[1, 59, 65, 68]]);
|
|
277
339
|
}));
|
|
278
340
|
return _handleImport.apply(this, arguments);
|
|
279
341
|
}
|
|
@@ -281,7 +343,7 @@ function ImportComponent(params) {
|
|
|
281
343
|
className: clsx("flex flex-col items-center pt-4", isMobile ? "w-full" : "w-[21rem]"),
|
|
282
344
|
children: [jsx("p", {
|
|
283
345
|
className: "text-sm text-icon-text-light dark:text-icon-text-dark",
|
|
284
|
-
children:
|
|
346
|
+
children: subtitle
|
|
285
347
|
}), jsx("div", {
|
|
286
348
|
id: TurnkeyImportIframeContainerId,
|
|
287
349
|
style: {
|
|
@@ -300,19 +362,22 @@ function ImportComponent(params) {
|
|
|
300
362
|
className: "transition-all ".concat(shaking ? "animate-shake" : "")
|
|
301
363
|
}), jsx(Input, {
|
|
302
364
|
type: "text",
|
|
303
|
-
|
|
365
|
+
"data-testid": "import-wallet-name-input",
|
|
366
|
+
placeholder: placeholder,
|
|
304
367
|
value: walletName,
|
|
305
368
|
onChange: function onChange(e) {
|
|
306
369
|
return setWalletName(e.target.value);
|
|
307
370
|
},
|
|
308
371
|
className: "placeholder:text-icon-text-light dark:placeholder:text-icon-text-dark w-full my-2 py-3 px-3 rounded-md text-inherit bg-icon-background-light dark:bg-icon-background-dark border border-modal-background-dark/20 dark:border-modal-background-light/20 focus:outline-primary-light focus:dark:outline-primary-dark focus:outline-[1px] focus:outline-offset-0 box-border"
|
|
309
372
|
}), jsx(ActionButton, {
|
|
373
|
+
name: "import-button",
|
|
310
374
|
loading: isLoading,
|
|
311
375
|
spinnerClassName: "text-primary-text-light dark:text-primary-text-dark",
|
|
312
376
|
onClick: handleImport,
|
|
313
377
|
className: "bg-primary-light dark:bg-primary-dark text-primary-text-light dark:text-primary-text-dark",
|
|
314
378
|
children: "Import"
|
|
315
379
|
}), jsxs("p", {
|
|
380
|
+
"data-testid": "import-error-message",
|
|
316
381
|
className: clsx("text-sm text-red-500 transition-opacity delay-75 line-clamp-2 w-full", error ? "opacity-100 pointer-events-auto mt-2" : "opacity-0 pointer-events-none absolute"),
|
|
317
382
|
children: [error === null || error === void 0 ? void 0 : error.message, ":", " ", (error === null || error === void 0 ? void 0 : error.cause) instanceof TurnkeyError ? error === null || error === void 0 ? void 0 : error.cause.message : (error === null || error === void 0 ? void 0 : (_error$cause = error.cause) === null || _error$cause === void 0 ? void 0 : _error$cause.toString()) || "Unknown error"]
|
|
318
383
|
})]
|