@getpara/core-sdk 1.0.2 → 1.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/cjs/ParaCore.js +125 -223
- package/dist/cjs/constants.js +20 -0
- package/dist/cjs/cryptography/utils.js +2 -2
- package/dist/cjs/external/userManagementClient.js +14 -14
- package/dist/cjs/index.js +28 -12
- package/dist/cjs/types/config.js +22 -0
- package/dist/cjs/types/index.js +11 -2
- package/dist/cjs/types/onRamps.js +10 -0
- package/dist/cjs/types/recovery.js +12 -0
- package/dist/cjs/types/wallet.js +9 -0
- package/dist/cjs/utils/events.js +9 -0
- package/dist/cjs/utils/{formattingUtils.js → formatting.js} +11 -1
- package/dist/cjs/utils/index.js +22 -0
- package/dist/cjs/utils/onRamps.js +36 -0
- package/dist/cjs/utils/url.js +74 -0
- package/dist/cjs/utils/wallet.js +74 -0
- package/dist/esm/ParaCore.js +74 -165
- package/dist/esm/constants.js +17 -0
- package/dist/esm/cryptography/utils.js +1 -1
- package/dist/esm/external/userManagementClient.js +1 -1
- package/dist/esm/index.js +12 -8
- package/dist/esm/types/config.js +19 -0
- package/dist/esm/types/index.js +6 -2
- package/dist/esm/types/onRamps.js +7 -0
- package/dist/esm/types/recovery.js +9 -0
- package/dist/esm/types/wallet.js +6 -0
- package/dist/esm/utils/events.js +5 -0
- package/dist/esm/utils/{formattingUtils.js → formatting.js} +8 -0
- package/dist/esm/utils/index.js +6 -0
- package/dist/esm/utils/onRamps.js +30 -0
- package/dist/esm/utils/url.js +66 -0
- package/dist/esm/utils/wallet.js +64 -0
- package/dist/types/ParaCore.d.ts +4 -167
- package/dist/types/PlatformUtils.d.ts +1 -3
- package/dist/types/constants.d.ts +17 -0
- package/dist/types/cryptography/utils.d.ts +1 -1
- package/dist/types/external/userManagementClient.d.ts +1 -1
- package/dist/types/index.d.ts +12 -10
- package/dist/types/shares/recovery.d.ts +1 -1
- package/dist/types/shares/shareDistribution.d.ts +1 -1
- package/dist/types/types/config.d.ts +162 -0
- package/dist/types/types/events.d.ts +10 -10
- package/dist/types/types/index.d.ts +6 -2
- package/dist/types/types/onRamps.d.ts +10 -0
- package/dist/types/types/recovery.d.ts +7 -0
- package/dist/types/types/wallet.d.ts +39 -0
- package/dist/types/utils/events.d.ts +2 -0
- package/dist/types/utils/{formattingUtils.d.ts → formatting.d.ts} +3 -1
- package/dist/types/utils/index.d.ts +6 -0
- package/dist/types/utils/onRamps.d.ts +12 -0
- package/dist/types/utils/url.d.ts +15 -0
- package/dist/types/utils/wallet.d.ts +10 -0
- package/package.json +3 -3
- package/dist/cjs/definitions.js +0 -153
- package/dist/cjs/types/walletTypes.js +0 -2
- package/dist/esm/definitions.js +0 -140
- package/dist/esm/types/walletTypes.js +0 -1
- package/dist/types/definitions.d.ts +0 -86
- package/dist/types/types/walletTypes.d.ts +0 -11
- /package/dist/cjs/types/{popupTypes.js → popup.js} +0 -0
- /package/dist/cjs/utils/{pollingUtils.js → polling.js} +0 -0
- /package/dist/esm/types/{popupTypes.js → popup.js} +0 -0
- /package/dist/esm/utils/{pollingUtils.js → polling.js} +0 -0
- /package/dist/types/types/{popupTypes.d.ts → popup.d.ts} +0 -0
- /package/dist/types/utils/{pollingUtils.d.ts → polling.d.ts} +0 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SHORT_POLLING_INTERVAL_MS = exports.POLLING_INTERVAL_MS = exports.SESSION_STORAGE_LOGIN_ENCRYPTION_KEY_PAIR = exports.LOCAL_STORAGE_SESSION_COOKIE = exports.LOCAL_STORAGE_CURRENT_EXTERNAL_WALLET_ADDRESSES = exports.LOCAL_STORAGE_CURRENT_WALLET_IDS = exports.LOCAL_STORAGE_EXTERNAL_WALLETS = exports.LOCAL_STORAGE_WALLETS = exports.LOCAL_STORAGE_ED25519_WALLETS = exports.LOCAL_STORAGE_USER_ID = exports.LOCAL_STORAGE_TELEGRAM_USER_ID = exports.LOCAL_STORAGE_FARCASTER_USERNAME = exports.LOCAL_STORAGE_COUNTRY_CODE = exports.LOCAL_STORAGE_PHONE = exports.LOCAL_STORAGE_EMAIL = exports.PREFIX = exports.PARA_CORE_VERSION = void 0;
|
|
4
|
+
exports.PARA_CORE_VERSION = '1.1.0';
|
|
5
|
+
exports.PREFIX = '@CAPSULE/';
|
|
6
|
+
exports.LOCAL_STORAGE_EMAIL = `${exports.PREFIX}e-mail`;
|
|
7
|
+
exports.LOCAL_STORAGE_PHONE = `${exports.PREFIX}phone`;
|
|
8
|
+
exports.LOCAL_STORAGE_COUNTRY_CODE = `${exports.PREFIX}countryCode`;
|
|
9
|
+
exports.LOCAL_STORAGE_FARCASTER_USERNAME = `${exports.PREFIX}farcasterUsername`;
|
|
10
|
+
exports.LOCAL_STORAGE_TELEGRAM_USER_ID = `${exports.PREFIX}telegramUserId`;
|
|
11
|
+
exports.LOCAL_STORAGE_USER_ID = `${exports.PREFIX}userId`;
|
|
12
|
+
exports.LOCAL_STORAGE_ED25519_WALLETS = `${exports.PREFIX}ed25519Wallets`;
|
|
13
|
+
exports.LOCAL_STORAGE_WALLETS = `${exports.PREFIX}wallets`;
|
|
14
|
+
exports.LOCAL_STORAGE_EXTERNAL_WALLETS = `${exports.PREFIX}externalWallets`;
|
|
15
|
+
exports.LOCAL_STORAGE_CURRENT_WALLET_IDS = `${exports.PREFIX}currentWalletIds`;
|
|
16
|
+
exports.LOCAL_STORAGE_CURRENT_EXTERNAL_WALLET_ADDRESSES = `${exports.PREFIX}currentExternalWalletAddresses`;
|
|
17
|
+
exports.LOCAL_STORAGE_SESSION_COOKIE = `${exports.PREFIX}sessionCookie`;
|
|
18
|
+
exports.SESSION_STORAGE_LOGIN_ENCRYPTION_KEY_PAIR = `${exports.PREFIX}loginEncryptionKeyPair`;
|
|
19
|
+
exports.POLLING_INTERVAL_MS = 2000;
|
|
20
|
+
exports.SHORT_POLLING_INTERVAL_MS = 1000;
|
|
@@ -15,7 +15,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
15
15
|
exports.decryptPrivateKeyWithPassword = exports.encryptPrivateKeyWithPassword = exports.hashPasswordWithSalt = exports.encryptWithDerivedPublicKey = exports.decryptPrivateKeyAndDecryptShare = exports.getDerivedPrivateKeyAndDecrypt = exports.decryptWithPrivateKey = exports.decryptWithKeyPair = exports.symmetricKeyEncryptMessage = exports.getPublicKeyFromSignature = exports.getAsymmetricKeyPair = exports.decryptPrivateKey = exports.encryptPrivateKey = exports.decodePrivateKeyPemHex = exports.encodePrivateKeyToPemHex = exports.publicKeyHexToPem = exports.publicKeyFromHex = exports.getPublicKeyHex = exports.getSHA256HashHex = void 0;
|
|
16
16
|
const base64url_1 = __importDefault(require("base64url"));
|
|
17
17
|
const node_forge_1 = __importDefault(require("node-forge"));
|
|
18
|
-
const
|
|
18
|
+
const index_js_1 = require("../utils/index.js");
|
|
19
19
|
const rsa = node_forge_1.default.pki.rsa;
|
|
20
20
|
const RSA_ENCRYPTION_SCHEME = 'RSA-OAEP';
|
|
21
21
|
// ivs can be constant only because every key is only ever used to encrypt one message
|
|
@@ -96,7 +96,7 @@ function getAsymmetricKeyPair(ctx, seedValue) {
|
|
|
96
96
|
// only using 1 web worker as more makes the call non-deterministic
|
|
97
97
|
// -1 uses optimal amount of web workers
|
|
98
98
|
options.workers = seedValue ? 1 : -1;
|
|
99
|
-
const workerRes = yield fetch(`${(0,
|
|
99
|
+
const workerRes = yield fetch(`${(0, index_js_1.getPortalBaseURL)(ctx)}/static/js/prime.worker.min.js`);
|
|
100
100
|
const workerBlob = new Blob([yield workerRes.text()], { type: 'application/javascript' });
|
|
101
101
|
options.workerScript = URL.createObjectURL(workerBlob);
|
|
102
102
|
}
|
|
@@ -5,16 +5,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.initClient = exports.getBaseMPCNetworkUrl = exports.getBaseUrl = exports.getBaseOAuthUrl = void 0;
|
|
7
7
|
const user_management_client_1 = __importDefault(require("@getpara/user-management-client"));
|
|
8
|
-
const
|
|
8
|
+
const index_js_1 = require("../types/index.js");
|
|
9
9
|
function getBaseOAuthUrl(env) {
|
|
10
10
|
switch (env) {
|
|
11
|
-
case
|
|
11
|
+
case index_js_1.Environment.DEV:
|
|
12
12
|
return 'http://localhost:8080/';
|
|
13
|
-
case
|
|
13
|
+
case index_js_1.Environment.SANDBOX:
|
|
14
14
|
return 'https://api.sandbox.usecapsule.com/';
|
|
15
|
-
case
|
|
15
|
+
case index_js_1.Environment.BETA:
|
|
16
16
|
return 'https://api.beta.usecapsule.com/';
|
|
17
|
-
case
|
|
17
|
+
case index_js_1.Environment.PROD:
|
|
18
18
|
return 'https://api.usecapsule.com/';
|
|
19
19
|
default:
|
|
20
20
|
throw new Error(`unsupported env: ${env}`);
|
|
@@ -23,13 +23,13 @@ function getBaseOAuthUrl(env) {
|
|
|
23
23
|
exports.getBaseOAuthUrl = getBaseOAuthUrl;
|
|
24
24
|
function getBaseUrl(env) {
|
|
25
25
|
switch (env) {
|
|
26
|
-
case
|
|
26
|
+
case index_js_1.Environment.DEV:
|
|
27
27
|
return 'http://localhost:8080/';
|
|
28
|
-
case
|
|
28
|
+
case index_js_1.Environment.SANDBOX:
|
|
29
29
|
return 'https://api.sandbox.getpara.com/';
|
|
30
|
-
case
|
|
30
|
+
case index_js_1.Environment.BETA:
|
|
31
31
|
return 'https://api.beta.getpara.com/';
|
|
32
|
-
case
|
|
32
|
+
case index_js_1.Environment.PROD:
|
|
33
33
|
return 'https://api.getpara.com/';
|
|
34
34
|
default:
|
|
35
35
|
throw new Error(`unsupported env: ${env}`);
|
|
@@ -39,13 +39,13 @@ exports.getBaseUrl = getBaseUrl;
|
|
|
39
39
|
function getBaseMPCNetworkUrl(env, useWebsocket) {
|
|
40
40
|
const prefix = useWebsocket ? 'ws' : 'http';
|
|
41
41
|
switch (env) {
|
|
42
|
-
case
|
|
42
|
+
case index_js_1.Environment.DEV:
|
|
43
43
|
return `${prefix}://localhost:3000`;
|
|
44
|
-
case
|
|
44
|
+
case index_js_1.Environment.SANDBOX:
|
|
45
45
|
return `${prefix}s://mpc-network.sandbox.getpara.com`;
|
|
46
|
-
case
|
|
46
|
+
case index_js_1.Environment.BETA:
|
|
47
47
|
return `${prefix}s://mpc-network.beta.getpara.com`;
|
|
48
|
-
case
|
|
48
|
+
case index_js_1.Environment.PROD:
|
|
49
49
|
return `${prefix}s://mpc-network.prod.getpara.com`;
|
|
50
50
|
default:
|
|
51
51
|
throw new Error(`unsupported env: ${env}`);
|
|
@@ -55,7 +55,7 @@ exports.getBaseMPCNetworkUrl = getBaseMPCNetworkUrl;
|
|
|
55
55
|
function initClient({ env, version, apiKey, partnerId, useFetchAdapter = false, retrieveSessionCookie, persistSessionCookie, }) {
|
|
56
56
|
return new user_management_client_1.default({
|
|
57
57
|
userManagementHost: getBaseUrl(env),
|
|
58
|
-
version: [
|
|
58
|
+
version: [index_js_1.Environment.DEV, index_js_1.Environment.SANDBOX].includes(env) ? 'dev' : version,
|
|
59
59
|
apiKey: apiKey,
|
|
60
60
|
partnerId,
|
|
61
61
|
opts: { useFetchAdapter },
|
package/dist/cjs/index.js
CHANGED
|
@@ -26,30 +26,38 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
26
26
|
return result;
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.paraVersion = exports.
|
|
29
|
+
exports.paraVersion = exports.transmissionUtilsRetrieve = exports.getPortalBaseURL = exports.toAssetInfoArray = exports.getOnRampNetworks = exports.getOnRampAssets = exports.isWalletSupported = exports.publicKeyFromHex = exports.decryptPrivateKeyWithPassword = exports.encryptPrivateKeyWithPassword = exports.hashPasswordWithSalt = exports.decryptPrivateKeyAndDecryptShare = exports.decryptPrivateKey = exports.encryptPrivateKey = exports.getSHA256HashHex = exports.getPublicKeyFromSignature = exports.getDerivedPrivateKeyAndDecrypt = exports.encodePrivateKeyToPemHex = exports.encryptWithDerivedPublicKey = exports.getPublicKeyHex = exports.getAsymmetricKeyPair = exports.decryptWithPrivateKey = exports.decryptWithKeyPair = exports.mpcComputationClient = exports.initClient = exports.getBaseUrl = exports.KeyContainer = exports.distributeNewShare = exports.STORAGE_PREFIX = exports.entityToWallet = exports.stringToPhoneNumber = exports.getPortalDomain = exports.RecoveryStatus = exports.PregenIdentifierType = exports.PopupType = exports.OnRampMethod = exports.PREGEN_IDENTIFIER_TYPES = exports.NON_ED25519 = exports.OAuthMethod = exports.OnRampPurchaseStatus = exports.OnRampProvider = exports.OnRampPurchaseType = exports.OnRampAsset = exports.WalletScheme = exports.WalletType = exports.Network = exports.EmailTheme = exports.AuthMethod = void 0;
|
|
30
30
|
const ParaCore_js_1 = require("./ParaCore.js");
|
|
31
|
-
Object.defineProperty(exports, "STORAGE_PREFIX", { enumerable: true, get: function () { return ParaCore_js_1.PREFIX; } });
|
|
32
|
-
Object.defineProperty(exports, "PregenIdentifierType", { enumerable: true, get: function () { return ParaCore_js_1.PregenIdentifierType; } });
|
|
33
|
-
Object.defineProperty(exports, "isWalletSupported", { enumerable: true, get: function () { return ParaCore_js_1.isWalletSupported; } });
|
|
34
31
|
var user_management_client_1 = require("@getpara/user-management-client");
|
|
35
32
|
Object.defineProperty(exports, "AuthMethod", { enumerable: true, get: function () { return user_management_client_1.AuthMethod; } });
|
|
36
33
|
Object.defineProperty(exports, "EmailTheme", { enumerable: true, get: function () { return user_management_client_1.EmailTheme; } });
|
|
34
|
+
Object.defineProperty(exports, "Network", { enumerable: true, get: function () { return user_management_client_1.Network; } });
|
|
37
35
|
Object.defineProperty(exports, "WalletType", { enumerable: true, get: function () { return user_management_client_1.WalletType; } });
|
|
38
36
|
Object.defineProperty(exports, "WalletScheme", { enumerable: true, get: function () { return user_management_client_1.WalletScheme; } });
|
|
37
|
+
Object.defineProperty(exports, "OnRampAsset", { enumerable: true, get: function () { return user_management_client_1.OnRampAsset; } });
|
|
39
38
|
Object.defineProperty(exports, "OnRampPurchaseType", { enumerable: true, get: function () { return user_management_client_1.OnRampPurchaseType; } });
|
|
39
|
+
Object.defineProperty(exports, "OnRampProvider", { enumerable: true, get: function () { return user_management_client_1.OnRampProvider; } });
|
|
40
|
+
Object.defineProperty(exports, "OnRampPurchaseStatus", { enumerable: true, get: function () { return user_management_client_1.OnRampPurchaseStatus; } });
|
|
40
41
|
Object.defineProperty(exports, "OAuthMethod", { enumerable: true, get: function () { return user_management_client_1.OAuthMethod; } });
|
|
41
42
|
Object.defineProperty(exports, "NON_ED25519", { enumerable: true, get: function () { return user_management_client_1.NON_ED25519; } });
|
|
42
43
|
Object.defineProperty(exports, "PREGEN_IDENTIFIER_TYPES", { enumerable: true, get: function () { return user_management_client_1.PREGEN_IDENTIFIER_TYPES; } });
|
|
43
|
-
|
|
44
|
-
|
|
44
|
+
var index_js_1 = require("./types/index.js");
|
|
45
|
+
Object.defineProperty(exports, "OnRampMethod", { enumerable: true, get: function () { return index_js_1.OnRampMethod; } });
|
|
46
|
+
Object.defineProperty(exports, "PopupType", { enumerable: true, get: function () { return index_js_1.PopupType; } });
|
|
47
|
+
Object.defineProperty(exports, "PregenIdentifierType", { enumerable: true, get: function () { return index_js_1.PregenIdentifierType; } });
|
|
48
|
+
Object.defineProperty(exports, "RecoveryStatus", { enumerable: true, get: function () { return index_js_1.RecoveryStatus; } });
|
|
49
|
+
__exportStar(require("./types/events.js"), exports);
|
|
50
|
+
__exportStar(require("./types/config.js"), exports);
|
|
51
|
+
var index_js_2 = require("./utils/index.js");
|
|
52
|
+
Object.defineProperty(exports, "getPortalDomain", { enumerable: true, get: function () { return index_js_2.getPortalDomain; } });
|
|
53
|
+
Object.defineProperty(exports, "stringToPhoneNumber", { enumerable: true, get: function () { return index_js_2.stringToPhoneNumber; } });
|
|
54
|
+
Object.defineProperty(exports, "entityToWallet", { enumerable: true, get: function () { return index_js_2.entityToWallet; } });
|
|
55
|
+
var constants_js_1 = require("./constants.js");
|
|
56
|
+
Object.defineProperty(exports, "STORAGE_PREFIX", { enumerable: true, get: function () { return constants_js_1.PREFIX; } });
|
|
45
57
|
var shareDistribution_js_1 = require("./shares/shareDistribution.js");
|
|
46
58
|
Object.defineProperty(exports, "distributeNewShare", { enumerable: true, get: function () { return shareDistribution_js_1.distributeNewShare; } });
|
|
47
59
|
var KeyContainer_js_1 = require("./shares/KeyContainer.js");
|
|
48
60
|
Object.defineProperty(exports, "KeyContainer", { enumerable: true, get: function () { return KeyContainer_js_1.KeyContainer; } });
|
|
49
|
-
var ParaCore_js_2 = require("./ParaCore.js");
|
|
50
|
-
Object.defineProperty(exports, "RecoveryStatus", { enumerable: true, get: function () { return ParaCore_js_2.RecoveryStatus; } });
|
|
51
|
-
Object.defineProperty(exports, "stringToPhoneNumber", { enumerable: true, get: function () { return ParaCore_js_2.stringToPhoneNumber; } });
|
|
52
|
-
Object.defineProperty(exports, "entityToWallet", { enumerable: true, get: function () { return ParaCore_js_2.entityToWallet; } });
|
|
53
61
|
var userManagementClient_js_1 = require("./external/userManagementClient.js");
|
|
54
62
|
Object.defineProperty(exports, "getBaseUrl", { enumerable: true, get: function () { return userManagementClient_js_1.getBaseUrl; } });
|
|
55
63
|
Object.defineProperty(exports, "initClient", { enumerable: true, get: function () { return userManagementClient_js_1.initClient; } });
|
|
@@ -72,9 +80,17 @@ Object.defineProperty(exports, "encryptPrivateKeyWithPassword", { enumerable: tr
|
|
|
72
80
|
Object.defineProperty(exports, "decryptPrivateKeyWithPassword", { enumerable: true, get: function () { return utils_js_1.decryptPrivateKeyWithPassword; } });
|
|
73
81
|
Object.defineProperty(exports, "publicKeyFromHex", { enumerable: true, get: function () { return utils_js_1.publicKeyFromHex; } });
|
|
74
82
|
__exportStar(require("./external/userManagementClient.js"), exports);
|
|
75
|
-
__exportStar(require("./utils/pollingUtils.js"), exports);
|
|
76
83
|
__exportStar(require("./errors.js"), exports);
|
|
77
|
-
__exportStar(require("./utils/
|
|
84
|
+
__exportStar(require("./utils/formatting.js"), exports);
|
|
85
|
+
__exportStar(require("./utils/polling.js"), exports);
|
|
86
|
+
var wallet_js_1 = require("./utils/wallet.js");
|
|
87
|
+
Object.defineProperty(exports, "isWalletSupported", { enumerable: true, get: function () { return wallet_js_1.isWalletSupported; } });
|
|
88
|
+
var onRamps_js_1 = require("./utils/onRamps.js");
|
|
89
|
+
Object.defineProperty(exports, "getOnRampAssets", { enumerable: true, get: function () { return onRamps_js_1.getOnRampAssets; } });
|
|
90
|
+
Object.defineProperty(exports, "getOnRampNetworks", { enumerable: true, get: function () { return onRamps_js_1.getOnRampNetworks; } });
|
|
91
|
+
Object.defineProperty(exports, "toAssetInfoArray", { enumerable: true, get: function () { return onRamps_js_1.toAssetInfoArray; } });
|
|
92
|
+
var url_js_1 = require("./utils/url.js");
|
|
93
|
+
Object.defineProperty(exports, "getPortalBaseURL", { enumerable: true, get: function () { return url_js_1.getPortalBaseURL; } });
|
|
78
94
|
var transmissionUtils_js_1 = require("./transmission/transmissionUtils.js");
|
|
79
95
|
Object.defineProperty(exports, "transmissionUtilsRetrieve", { enumerable: true, get: function () { return transmissionUtils_js_1.retrieve; } });
|
|
80
96
|
exports.paraVersion = ParaCore_js_1.ParaCore.version;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EnabledFlow = exports.Environment = void 0;
|
|
4
|
+
const user_management_client_1 = require("@getpara/user-management-client");
|
|
5
|
+
var Environment;
|
|
6
|
+
(function (Environment) {
|
|
7
|
+
// Internal Environments
|
|
8
|
+
Environment["DEV"] = "DEV";
|
|
9
|
+
Environment["SANDBOX"] = "SANDBOX";
|
|
10
|
+
Environment["BETA"] = "BETA";
|
|
11
|
+
Environment["PROD"] = "PROD";
|
|
12
|
+
// Customer-Facing Environments
|
|
13
|
+
// NOTE: these resolve to the corresponding internal environments for convenience
|
|
14
|
+
Environment["DEVELOPMENT"] = "BETA";
|
|
15
|
+
Environment["PRODUCTION"] = "PROD";
|
|
16
|
+
})(Environment || (exports.Environment = Environment = {}));
|
|
17
|
+
var EnabledFlow;
|
|
18
|
+
(function (EnabledFlow) {
|
|
19
|
+
EnabledFlow["BUY"] = "BUY";
|
|
20
|
+
EnabledFlow["RECEIVE"] = "RECEIVE";
|
|
21
|
+
EnabledFlow["WITHDRAW"] = "WITHDRAW";
|
|
22
|
+
})(EnabledFlow || (exports.EnabledFlow = EnabledFlow = {}));
|
package/dist/cjs/types/index.js
CHANGED
|
@@ -14,8 +14,17 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
|
|
17
|
+
exports.OnRampPurchaseStatus = exports.OnRampProvider = exports.OnRampAsset = exports.Network = void 0;
|
|
18
|
+
__exportStar(require("./config.js"), exports);
|
|
19
|
+
__exportStar(require("./wallet.js"), exports);
|
|
18
20
|
__exportStar(require("./params.js"), exports);
|
|
19
21
|
__exportStar(require("./theme.js"), exports);
|
|
20
|
-
__exportStar(require("./
|
|
22
|
+
__exportStar(require("./onRamps.js"), exports);
|
|
23
|
+
__exportStar(require("./popup.js"), exports);
|
|
24
|
+
__exportStar(require("./recovery.js"), exports);
|
|
21
25
|
__exportStar(require("./events.js"), exports);
|
|
26
|
+
var user_management_client_1 = require("@getpara/user-management-client");
|
|
27
|
+
Object.defineProperty(exports, "Network", { enumerable: true, get: function () { return user_management_client_1.Network; } });
|
|
28
|
+
Object.defineProperty(exports, "OnRampAsset", { enumerable: true, get: function () { return user_management_client_1.OnRampAsset; } });
|
|
29
|
+
Object.defineProperty(exports, "OnRampProvider", { enumerable: true, get: function () { return user_management_client_1.OnRampProvider; } });
|
|
30
|
+
Object.defineProperty(exports, "OnRampPurchaseStatus", { enumerable: true, get: function () { return user_management_client_1.OnRampPurchaseStatus; } });
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OnRampMethod = void 0;
|
|
4
|
+
var OnRampMethod;
|
|
5
|
+
(function (OnRampMethod) {
|
|
6
|
+
OnRampMethod["ACH"] = "ACH";
|
|
7
|
+
OnRampMethod["DEBIT"] = "Debit";
|
|
8
|
+
OnRampMethod["CREDIT"] = "Credit";
|
|
9
|
+
OnRampMethod["APPLE_PAY"] = "Apple Pay";
|
|
10
|
+
})(OnRampMethod || (exports.OnRampMethod = OnRampMethod = {}));
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RecoveryStatus = void 0;
|
|
4
|
+
// Make sure to keep this in sync with capsule-org/src/entities/recoveryAttemptEntity.ts
|
|
5
|
+
var RecoveryStatus;
|
|
6
|
+
(function (RecoveryStatus) {
|
|
7
|
+
RecoveryStatus["INITIATED"] = "INITIATED";
|
|
8
|
+
RecoveryStatus["READY"] = "READY";
|
|
9
|
+
RecoveryStatus["EXPIRED"] = "EXPIRED";
|
|
10
|
+
RecoveryStatus["FINISHED"] = "FINISHED";
|
|
11
|
+
RecoveryStatus["CANCELLED"] = "CANCELLED";
|
|
12
|
+
})(RecoveryStatus || (exports.RecoveryStatus = RecoveryStatus = {}));
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PregenIdentifierType = void 0;
|
|
4
|
+
/** @deprecated */
|
|
5
|
+
var PregenIdentifierType;
|
|
6
|
+
(function (PregenIdentifierType) {
|
|
7
|
+
PregenIdentifierType["EMAIL"] = "EMAIL";
|
|
8
|
+
PregenIdentifierType["PHONE"] = "PHONE";
|
|
9
|
+
})(PregenIdentifierType || (exports.PregenIdentifierType = PregenIdentifierType = {}));
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.dispatchEvent = void 0;
|
|
4
|
+
function dispatchEvent(type, data, error) {
|
|
5
|
+
typeof window !== 'undefined' &&
|
|
6
|
+
!!window.dispatchEvent &&
|
|
7
|
+
window.dispatchEvent(new CustomEvent(type, { detail: Object.assign({ data }, (error && { error: new Error(error) })) }));
|
|
8
|
+
}
|
|
9
|
+
exports.dispatchEvent = dispatchEvent;
|
|
@@ -3,11 +3,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.truncateAddress = exports.getCosmosAddress = exports.decimalToHex = exports.hexToDecimal = exports.hexToUint8Array = exports.hexToSignature = exports.hexStringToBase64 = void 0;
|
|
6
|
+
exports.normalizePhoneNumber = exports.stringToPhoneNumber = exports.truncateAddress = exports.getCosmosAddress = exports.decimalToHex = exports.hexToDecimal = exports.hexToUint8Array = exports.hexToSignature = exports.hexStringToBase64 = void 0;
|
|
7
7
|
const encoding_1 = require("@cosmjs/encoding");
|
|
8
8
|
const sha256_1 = require("@noble/hashes/sha256");
|
|
9
9
|
const ripemd160_1 = require("@noble/hashes/ripemd160");
|
|
10
10
|
const elliptic_1 = __importDefault(require("elliptic"));
|
|
11
|
+
const libphonenumber_js_1 = __importDefault(require("libphonenumber-js"));
|
|
11
12
|
const secp256k1 = new elliptic_1.default.ec('secp256k1');
|
|
12
13
|
function hexStringToBase64(hexString) {
|
|
13
14
|
if (hexString.substring(0, 2) === '0x') {
|
|
@@ -69,3 +70,12 @@ function truncateAddress(str, addressType, { prefix = addressType === 'COSMOS' ?
|
|
|
69
70
|
return `${str.slice(0, headLength)}...${str.slice(-4)}`;
|
|
70
71
|
}
|
|
71
72
|
exports.truncateAddress = truncateAddress;
|
|
73
|
+
function stringToPhoneNumber(str) {
|
|
74
|
+
var _a;
|
|
75
|
+
return (_a = (0, libphonenumber_js_1.default)(str)) === null || _a === void 0 ? void 0 : _a.formatInternational().replace(/[^\d+]/g, '');
|
|
76
|
+
}
|
|
77
|
+
exports.stringToPhoneNumber = stringToPhoneNumber;
|
|
78
|
+
function normalizePhoneNumber(countryCode, number) {
|
|
79
|
+
return stringToPhoneNumber(`${countryCode[0] !== '+' ? '+' : ''}${countryCode}${number}`);
|
|
80
|
+
}
|
|
81
|
+
exports.normalizePhoneNumber = normalizePhoneNumber;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./events.js"), exports);
|
|
18
|
+
__exportStar(require("./formatting.js"), exports);
|
|
19
|
+
__exportStar(require("./onRamps.js"), exports);
|
|
20
|
+
__exportStar(require("./polling.js"), exports);
|
|
21
|
+
__exportStar(require("./url.js"), exports);
|
|
22
|
+
__exportStar(require("./wallet.js"), exports);
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getOnRampAssets = exports.getOnRampNetworks = exports.toAssetInfoArray = void 0;
|
|
4
|
+
function toAssetInfoArray(data) {
|
|
5
|
+
const result = [];
|
|
6
|
+
Object.keys(data).forEach(walletType => {
|
|
7
|
+
const networks = data[walletType];
|
|
8
|
+
Object.keys(networks).forEach(network => {
|
|
9
|
+
const assets = networks[network];
|
|
10
|
+
Object.keys(assets).forEach(asset => {
|
|
11
|
+
const providerInfo = assets[asset];
|
|
12
|
+
result.push([walletType, network, asset, providerInfo]);
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
});
|
|
16
|
+
return result;
|
|
17
|
+
}
|
|
18
|
+
exports.toAssetInfoArray = toAssetInfoArray;
|
|
19
|
+
function getOnRampNetworks(data, { walletType, allowed } = {}) {
|
|
20
|
+
return [
|
|
21
|
+
...new Set(toAssetInfoArray(data)
|
|
22
|
+
.filter(([type, network]) => (!walletType || type === walletType) && (!allowed || allowed.includes(network)))
|
|
23
|
+
.map(([_, network]) => network)),
|
|
24
|
+
];
|
|
25
|
+
}
|
|
26
|
+
exports.getOnRampNetworks = getOnRampNetworks;
|
|
27
|
+
function getOnRampAssets(data, { walletType, network, allowed, } = {}) {
|
|
28
|
+
return [
|
|
29
|
+
...new Set(toAssetInfoArray(data)
|
|
30
|
+
.filter(([t, n, a]) => (!walletType || t === walletType) &&
|
|
31
|
+
(!network || n === network) &&
|
|
32
|
+
(!Array.isArray(allowed) || allowed.includes(a)))
|
|
33
|
+
.map(([, , asset]) => asset)),
|
|
34
|
+
];
|
|
35
|
+
}
|
|
36
|
+
exports.getOnRampAssets = getOnRampAssets;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.constructUrl = exports.getParaConnectBaseUrl = exports.getParaConnectDomain = exports.getPortalBaseURL = exports.getPortalDomain = void 0;
|
|
4
|
+
const index_js_1 = require("../types/index.js");
|
|
5
|
+
function getPortalDomain(env, isE2E) {
|
|
6
|
+
if (isE2E) {
|
|
7
|
+
return `localhost`;
|
|
8
|
+
}
|
|
9
|
+
switch (env) {
|
|
10
|
+
case index_js_1.Environment.DEV:
|
|
11
|
+
return 'localhost';
|
|
12
|
+
case index_js_1.Environment.SANDBOX:
|
|
13
|
+
return 'app.sandbox.usecapsule.com';
|
|
14
|
+
case index_js_1.Environment.BETA:
|
|
15
|
+
return 'app.beta.usecapsule.com';
|
|
16
|
+
case index_js_1.Environment.PROD:
|
|
17
|
+
return 'app.usecapsule.com';
|
|
18
|
+
default:
|
|
19
|
+
throw new Error(`env: ${env} not supported`);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
exports.getPortalDomain = getPortalDomain;
|
|
23
|
+
function getPortalBaseURL({ env, isE2E }, useLocalIp, isForWasm) {
|
|
24
|
+
if (isE2E) {
|
|
25
|
+
if (isForWasm) {
|
|
26
|
+
return `https://app.sandbox.usecapsule.com`;
|
|
27
|
+
}
|
|
28
|
+
return `http://localhost:3003`;
|
|
29
|
+
}
|
|
30
|
+
const domain = getPortalDomain(env);
|
|
31
|
+
if (env === index_js_1.Environment.DEV) {
|
|
32
|
+
if (useLocalIp) {
|
|
33
|
+
return `http://127.0.0.1:3003`;
|
|
34
|
+
}
|
|
35
|
+
return `http://${domain}:3003`;
|
|
36
|
+
}
|
|
37
|
+
return `https://${domain}`;
|
|
38
|
+
}
|
|
39
|
+
exports.getPortalBaseURL = getPortalBaseURL;
|
|
40
|
+
function getParaConnectDomain(env) {
|
|
41
|
+
switch (env) {
|
|
42
|
+
case index_js_1.Environment.DEV:
|
|
43
|
+
return 'localhost';
|
|
44
|
+
case index_js_1.Environment.SANDBOX:
|
|
45
|
+
return 'connect.sandbox.getpara.com';
|
|
46
|
+
case index_js_1.Environment.BETA:
|
|
47
|
+
return 'connect.beta.getpara.com';
|
|
48
|
+
case index_js_1.Environment.PROD:
|
|
49
|
+
return 'connect.getpara.com';
|
|
50
|
+
default:
|
|
51
|
+
throw new Error(`env: ${env} not supported`);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
exports.getParaConnectDomain = getParaConnectDomain;
|
|
55
|
+
function getParaConnectBaseUrl({ env }, useLocalIp) {
|
|
56
|
+
const domain = getParaConnectDomain(env);
|
|
57
|
+
if (env === index_js_1.Environment.DEV) {
|
|
58
|
+
if (useLocalIp) {
|
|
59
|
+
return `http://127.0.0.1:3008`;
|
|
60
|
+
}
|
|
61
|
+
return `http://${domain}:3008`;
|
|
62
|
+
}
|
|
63
|
+
return `https://${domain}`;
|
|
64
|
+
}
|
|
65
|
+
exports.getParaConnectBaseUrl = getParaConnectBaseUrl;
|
|
66
|
+
function constructUrl({ base, path, params = {}, }) {
|
|
67
|
+
const url = new URL(path, base);
|
|
68
|
+
Object.entries(params).forEach(([key, value]) => {
|
|
69
|
+
if (!!value && value !== 'undefined' && value !== 'null')
|
|
70
|
+
url.searchParams.set(key, value.toString());
|
|
71
|
+
});
|
|
72
|
+
return url.toString();
|
|
73
|
+
}
|
|
74
|
+
exports.constructUrl = constructUrl;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.migrateWallet = exports.entityToWallet = exports.getEquivalentTypes = exports.getWalletTypes = exports.getSchemes = exports.isWalletSupported = exports.isPregenIdentifierMatch = exports.WalletSchemeTypeMap = void 0;
|
|
4
|
+
const user_management_client_1 = require("@getpara/user-management-client");
|
|
5
|
+
const formatting_js_1 = require("./formatting.js");
|
|
6
|
+
exports.WalletSchemeTypeMap = {
|
|
7
|
+
[user_management_client_1.WalletScheme.DKLS]: {
|
|
8
|
+
[user_management_client_1.WalletType.EVM]: true,
|
|
9
|
+
[user_management_client_1.WalletType.COSMOS]: true,
|
|
10
|
+
},
|
|
11
|
+
[user_management_client_1.WalletScheme.CGGMP]: {
|
|
12
|
+
[user_management_client_1.WalletType.EVM]: true,
|
|
13
|
+
[user_management_client_1.WalletType.COSMOS]: true,
|
|
14
|
+
},
|
|
15
|
+
[user_management_client_1.WalletScheme.ED25519]: {
|
|
16
|
+
[user_management_client_1.WalletType.SOLANA]: true,
|
|
17
|
+
},
|
|
18
|
+
};
|
|
19
|
+
function isPregenIdentifierMatch(a, b, type) {
|
|
20
|
+
if (!a || !b) {
|
|
21
|
+
return false;
|
|
22
|
+
}
|
|
23
|
+
switch (type) {
|
|
24
|
+
case 'EMAIL':
|
|
25
|
+
return a.toLowerCase() === b.toLowerCase();
|
|
26
|
+
case 'PHONE':
|
|
27
|
+
return (0, formatting_js_1.stringToPhoneNumber)(a) === (0, formatting_js_1.stringToPhoneNumber)(b);
|
|
28
|
+
case 'CUSTOM_ID':
|
|
29
|
+
return a === b;
|
|
30
|
+
default:
|
|
31
|
+
return a.replace(/^@/g, '').toLowerCase() === b.replace(/^@/g, '').toLowerCase();
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.isPregenIdentifierMatch = isPregenIdentifierMatch;
|
|
35
|
+
function isWalletSupported(types, wallet) {
|
|
36
|
+
return types.some((walletType) => !!exports.WalletSchemeTypeMap[wallet.scheme][walletType]);
|
|
37
|
+
}
|
|
38
|
+
exports.isWalletSupported = isWalletSupported;
|
|
39
|
+
function getSchemes(types) {
|
|
40
|
+
return Object.keys(exports.WalletSchemeTypeMap).filter(scheme => {
|
|
41
|
+
if (scheme === user_management_client_1.WalletScheme.CGGMP) {
|
|
42
|
+
return false;
|
|
43
|
+
}
|
|
44
|
+
return (Array.isArray(types) ? types : Object.keys(types)).some(type => exports.WalletSchemeTypeMap[scheme][type]);
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
exports.getSchemes = getSchemes;
|
|
48
|
+
function getWalletTypes(schemes) {
|
|
49
|
+
return [
|
|
50
|
+
...new Set(schemes.reduce((acc, scheme) => {
|
|
51
|
+
return [...acc, ...Object.keys(exports.WalletSchemeTypeMap[scheme]).filter(type => exports.WalletSchemeTypeMap[scheme][type])];
|
|
52
|
+
}, [])),
|
|
53
|
+
];
|
|
54
|
+
}
|
|
55
|
+
exports.getWalletTypes = getWalletTypes;
|
|
56
|
+
function getEquivalentTypes(types) {
|
|
57
|
+
return getWalletTypes(getSchemes((Array.isArray(types) ? types : [types]).map(t => user_management_client_1.WalletType[t])));
|
|
58
|
+
}
|
|
59
|
+
exports.getEquivalentTypes = getEquivalentTypes;
|
|
60
|
+
function entityToWallet(w) {
|
|
61
|
+
return Object.assign(Object.assign({}, w), { scheme: w.scheme, type: w.type, pregenIdentifierType: w.pregenIdentifierType });
|
|
62
|
+
}
|
|
63
|
+
exports.entityToWallet = entityToWallet;
|
|
64
|
+
function migrateWallet(obj) {
|
|
65
|
+
if (['USER', 'PREGEN'].includes(obj.type)) {
|
|
66
|
+
obj.isPregen = obj.type === 'PREGEN';
|
|
67
|
+
obj.type = obj.scheme === user_management_client_1.WalletScheme.ED25519 ? user_management_client_1.WalletType.SOLANA : user_management_client_1.WalletType.EVM;
|
|
68
|
+
}
|
|
69
|
+
if (!!obj.scheme && !obj.type) {
|
|
70
|
+
obj.type = obj.scheme === user_management_client_1.WalletScheme.ED25519 ? user_management_client_1.WalletType.SOLANA : user_management_client_1.WalletType.EVM;
|
|
71
|
+
}
|
|
72
|
+
return obj;
|
|
73
|
+
}
|
|
74
|
+
exports.migrateWallet = migrateWallet;
|