@usecapsule/web-sdk
Advanced tools
Comparing version 1.17.0 to 1.18.0-dev.0
@@ -0,1 +1,2 @@ | ||
import { PregenIdentifierType } from '@usecapsule/core-sdk'; | ||
import { Ctx } from '@usecapsule/core-sdk'; | ||
@@ -8,3 +9,3 @@ import { BackupKitEmailProps } from '@usecapsule/user-management-client'; | ||
}>; | ||
export declare function preKeygen(ctx: Ctx, email: string, secretKey: string | null, _skipDistribute: boolean, partnerId: string, sessionCookie?: string): Promise<{ | ||
export declare function preKeygen(ctx: Ctx, pregenIdentifier: string, pregenIdentifierType: PregenIdentifierType, secretKey: string | null, _skipDistribute: boolean, partnerId: string, sessionCookie?: string): Promise<{ | ||
signer: string; | ||
@@ -19,3 +20,3 @@ walletId: string; | ||
}>; | ||
export declare function ed25519PreKeygen(ctx: Ctx, email: string, sessionCookie?: string): Promise<{ | ||
export declare function ed25519PreKeygen(ctx: Ctx, pregenIdentifier: string, pregenIdentifierType: PregenIdentifierType, sessionCookie?: string): Promise<{ | ||
signer: string; | ||
@@ -22,0 +23,0 @@ walletId: string; |
@@ -11,2 +11,3 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { | ||
import { setupWorker } from '../workers/workerWrapper.js'; | ||
import { PregenIdentifierType } from '@usecapsule/core-sdk'; | ||
import { distributeNewShare, waitUntilTrue } from '@usecapsule/core-sdk'; | ||
@@ -20,5 +21,5 @@ function isKeygenComplete(ctx, userId, walletId) { | ||
} | ||
function isPreKeygenComplete(ctx, email, walletId) { | ||
function isPreKeygenComplete(ctx, pregenIdentifier, pregenIdentifierType, walletId) { | ||
return __awaiter(this, void 0, void 0, function* () { | ||
const wallets = yield ctx.capsuleClient.getPregenWallets(email); | ||
const wallets = yield ctx.capsuleClient.getPregenWallets(pregenIdentifier, pregenIdentifierType); | ||
const wallet = wallets.wallets.find((w) => w.id === walletId); | ||
@@ -63,6 +64,6 @@ return !!wallet.address; | ||
} | ||
export function preKeygen(ctx, email, secretKey, _skipDistribute = false, partnerId, sessionCookie) { | ||
export function preKeygen(ctx, pregenIdentifier, pregenIdentifierType, secretKey, _skipDistribute = false, partnerId, sessionCookie) { | ||
return new Promise((resolve) => __awaiter(this, void 0, void 0, function* () { | ||
const worker = yield setupWorker(ctx, (res) => __awaiter(this, void 0, void 0, function* () { | ||
yield waitUntilTrue(() => __awaiter(this, void 0, void 0, function* () { return isPreKeygenComplete(ctx, email, res.walletId); }), 15000, 1000); | ||
yield waitUntilTrue(() => __awaiter(this, void 0, void 0, function* () { return isPreKeygenComplete(ctx, pregenIdentifier, pregenIdentifierType, res.walletId); }), 15000, 1000); | ||
resolve({ | ||
@@ -75,6 +76,11 @@ signer: res.signer, | ||
})); | ||
const email = undefined; | ||
const params = { pregenIdentifier, pregenIdentifierType, secretKey, partnerId, email }; | ||
if (pregenIdentifierType === PregenIdentifierType.EMAIL) { | ||
params.email = pregenIdentifier; | ||
} | ||
worker.postMessage({ | ||
env: ctx.env, | ||
apiKey: ctx.apiKey, | ||
params: { email, secretKey, partnerId }, | ||
params: params, | ||
functionType: 'PREKEYGEN', | ||
@@ -113,6 +119,6 @@ offloadMPCComputationURL: ctx.offloadMPCComputationURL, | ||
} | ||
export function ed25519PreKeygen(ctx, email, sessionCookie) { | ||
export function ed25519PreKeygen(ctx, pregenIdentifier, pregenIdentifierType, sessionCookie) { | ||
return new Promise((resolve) => __awaiter(this, void 0, void 0, function* () { | ||
const worker = yield setupWorker(ctx, (res) => __awaiter(this, void 0, void 0, function* () { | ||
yield waitUntilTrue(() => __awaiter(this, void 0, void 0, function* () { return isPreKeygenComplete(ctx, email, res.walletId); }), 15000, 1000); | ||
yield waitUntilTrue(() => __awaiter(this, void 0, void 0, function* () { return isPreKeygenComplete(ctx, pregenIdentifier, pregenIdentifierType, res.walletId); }), 15000, 1000); | ||
resolve({ | ||
@@ -125,6 +131,11 @@ signer: res.signer, | ||
})); | ||
const email = undefined; | ||
const params = { pregenIdentifier, pregenIdentifierType, email }; | ||
if (pregenIdentifierType === PregenIdentifierType.EMAIL) { | ||
params.email = pregenIdentifier; | ||
} | ||
worker.postMessage({ | ||
env: ctx.env, | ||
apiKey: ctx.apiKey, | ||
params: { email }, | ||
params: params, | ||
functionType: 'ED25519_PREKEYGEN', | ||
@@ -131,0 +142,0 @@ disableWorkers: ctx.disableWorkers, |
@@ -6,2 +6,3 @@ /// <reference types="node" /> | ||
import { BackupKitEmailProps } from '@usecapsule/user-management-client'; | ||
import { PregenIdentifierType } from '@usecapsule/core-sdk'; | ||
export declare class WebUtils implements PlatformUtils { | ||
@@ -14,3 +15,3 @@ getPrivateKey(ctx: Ctx, userId: string, walletId: string, share: string, sessionCookie: string): Promise<string>; | ||
}>; | ||
preKeygen(ctx: Ctx, partnerId: string | undefined, email: string, secretKey: string | null, // should be acceptable as null in RN as we don't pre-gen them | ||
preKeygen(ctx: Ctx, partnerId: string | undefined, pregenIdentifier: string, pregenIdentifierType: PregenIdentifierType, secretKey: string | null, // should be acceptable as null in RN as we don't pre-gen them | ||
sessionCookie: string): Promise<{ | ||
@@ -32,3 +33,3 @@ signer: string; | ||
}>; | ||
ed25519PreKeygen(ctx: Ctx, email: string, sessionCookie: string): Promise<{ | ||
ed25519PreKeygen(ctx: Ctx, pregenIdentifier: string, pregenIdentifierType: PregenIdentifierType, sessionCookie: string): Promise<{ | ||
signer: string; | ||
@@ -35,0 +36,0 @@ walletId: string; |
@@ -21,5 +21,5 @@ import { LocalStorage } from './LocalStorage.js'; | ||
} | ||
preKeygen(ctx, partnerId, email, secretKey, // should be acceptable as null in RN as we don't pre-gen them | ||
preKeygen(ctx, partnerId, pregenIdentifier, pregenIdentifierType, secretKey, // should be acceptable as null in RN as we don't pre-gen them | ||
sessionCookie) { | ||
return preKeygen(ctx, email, secretKey, false, partnerId, sessionCookie); | ||
return preKeygen(ctx, pregenIdentifier, pregenIdentifierType, secretKey, false, partnerId, sessionCookie); | ||
} | ||
@@ -41,4 +41,4 @@ signMessage(ctx, userId, walletId, share, message, sessionCookie, isDKLS) { | ||
} | ||
ed25519PreKeygen(ctx, email, sessionCookie) { | ||
return ed25519PreKeygen(ctx, email, sessionCookie); | ||
ed25519PreKeygen(ctx, pregenIdentifier, pregenIdentifierType, sessionCookie) { | ||
return ed25519PreKeygen(ctx, pregenIdentifier, pregenIdentifierType, sessionCookie); | ||
} | ||
@@ -45,0 +45,0 @@ ed25519Sign(ctx, userId, walletId, share, base64Bytes, sessionCookie) { |
import { Ctx, SignatureRes } from '@usecapsule/core-sdk'; | ||
import { PregenIdentifierType } from '@usecapsule/core-sdk'; | ||
export declare function ed25519Keygen(ctx: Ctx, userId: string): Promise<{ | ||
@@ -6,3 +7,3 @@ signer: string; | ||
}>; | ||
export declare function ed25519PreKeygen(ctx: Ctx, email: string): Promise<{ | ||
export declare function ed25519PreKeygen(ctx: Ctx, pregenIdentifier: string, pregenIdentifierType: PregenIdentifierType): Promise<{ | ||
signer: string; | ||
@@ -18,3 +19,3 @@ walletId: string; | ||
}>; | ||
export declare function preKeygen(ctx: Ctx, _partnerId: string | undefined, email: string, secretKey: string | null): Promise<{ | ||
export declare function preKeygen(ctx: Ctx, _partnerId: string | undefined, pregenIdentifier: string, pregenIdentifierType: PregenIdentifierType, secretKey: string | null): Promise<{ | ||
signer: string; | ||
@@ -21,0 +22,0 @@ walletId: string; |
@@ -62,5 +62,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { | ||
} | ||
export function ed25519PreKeygen(ctx, email) { | ||
export function ed25519PreKeygen(ctx, pregenIdentifier, pregenIdentifierType) { | ||
return __awaiter(this, void 0, void 0, function* () { | ||
const { walletId, protocolId } = yield ctx.capsuleClient.createPregenWallet({ email, scheme: SignatureScheme.ED25519 }); | ||
const { walletId, protocolId } = yield ctx.capsuleClient.createPregenWallet({ | ||
pregenIdentifier, | ||
pregenIdentifierType, | ||
scheme: SignatureScheme.ED25519, | ||
}); | ||
const serverUrl = getBaseMPCNetworkUrl(ctx.env, !ctx.disableWebSockets); | ||
@@ -115,5 +119,5 @@ const newSigner = (yield new Promise((resolve, reject) => global.ed25519CreateAccount(serverUrl, walletId, protocolId, (err, result) => { | ||
} | ||
export function preKeygen(ctx, _partnerId, email, secretKey) { | ||
export function preKeygen(ctx, _partnerId, pregenIdentifier, pregenIdentifierType, secretKey) { | ||
return __awaiter(this, void 0, void 0, function* () { | ||
const { walletId, protocolId } = yield ctx.capsuleClient.createPregenWallet({ email }); | ||
const { walletId, protocolId } = yield ctx.capsuleClient.createPregenWallet({ pregenIdentifier, pregenIdentifierType }); | ||
const serverUrl = getBaseMPCNetworkUrl(ctx.env, !ctx.disableWebSockets); | ||
@@ -120,0 +124,0 @@ const signerConfigUser = configDKLSBase(walletId, 'USER', ctx.disableWebSockets); |
@@ -15,3 +15,3 @@ // ANY CHANGES TO THIS FILE REQUIRE A REBUILD OF THE WORKER | ||
import * as walletUtils from './walletUtils.js'; | ||
import { getPortalBaseURL, initClient, mpcComputationClient } from '@usecapsule/core-sdk'; | ||
import { PregenIdentifierType, getPortalBaseURL, initClient, mpcComputationClient, } from '@usecapsule/core-sdk'; | ||
function loadWasm(ctx, wasmOverride) { | ||
@@ -59,4 +59,9 @@ return __awaiter(this, void 0, void 0, function* () { | ||
case 'PREKEYGEN': { | ||
const { partnerId, secretKey, email } = params; | ||
const keygenRes = yield walletUtils.preKeygen(ctx, partnerId, email, secretKey); | ||
const { email, partnerId, secretKey } = params; | ||
let { pregenIdentifier, pregenIdentifierType } = params; | ||
if (email !== 'null' && email !== 'undefined' && email !== '' && email != null) { | ||
pregenIdentifier = email; | ||
pregenIdentifierType = PregenIdentifierType.EMAIL; | ||
} | ||
const keygenRes = yield walletUtils.preKeygen(ctx, partnerId, pregenIdentifier, pregenIdentifierType, secretKey); | ||
return keygenRes; | ||
@@ -78,3 +83,8 @@ } | ||
const { email } = params; | ||
return walletUtils.ed25519PreKeygen(ctx, email); | ||
let { pregenIdentifier, pregenIdentifierType } = params; | ||
if (email !== 'null' && email !== 'undefined' && email !== '' && email != null) { | ||
pregenIdentifier = email; | ||
pregenIdentifierType = PregenIdentifierType.EMAIL; | ||
} | ||
return walletUtils.ed25519PreKeygen(ctx, pregenIdentifier, pregenIdentifierType); | ||
} | ||
@@ -81,0 +91,0 @@ default: { |
{ | ||
"name": "@usecapsule/web-sdk", | ||
"version": "1.17.0", | ||
"version": "1.18.0-dev.0", | ||
"type": "module", | ||
@@ -11,4 +11,4 @@ "main": "dist/index.js", | ||
"dependencies": { | ||
"@usecapsule/core-sdk": "1.15.0", | ||
"@usecapsule/user-management-client": "1.12.0", | ||
"@usecapsule/core-sdk": "1.16.0-dev.0", | ||
"@usecapsule/user-management-client": "1.13.0-dev.0", | ||
"assert": "^2.1.0", | ||
@@ -22,3 +22,4 @@ "base64url": "3.0.1", | ||
"build": "rm -rf dist && tsc && yarn post-build", | ||
"post-build": "./scripts/post-build.sh" | ||
"post-build": "./scripts/post-build.sh", | ||
"test": "vitest run" | ||
}, | ||
@@ -37,3 +38,3 @@ "devDependencies": { | ||
], | ||
"gitHead": "41dd49a5be1ebb9a723a52a40b2b65c15acc2379" | ||
"gitHead": "10ecce9873131e6a1b114fb0642a94bb02040bef" | ||
} |
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
102227
1813
2
3
- Removed@celo/base@3.2.0(transitive)
- Removed@celo/utils@3.2.0(transitive)
- Removed@ethersproject/abi@5.0.7(transitive)
- Removed@ethersproject/abstract-provider@5.7.0(transitive)
- Removed@ethersproject/abstract-signer@5.7.0(transitive)
- Removed@ethersproject/address@5.7.0(transitive)
- Removed@ethersproject/base64@5.7.0(transitive)
- Removed@ethersproject/bignumber@5.7.0(transitive)
- Removed@ethersproject/bytes@5.7.0(transitive)
- Removed@ethersproject/constants@5.7.0(transitive)
- Removed@ethersproject/hash@5.7.0(transitive)
- Removed@ethersproject/keccak256@5.7.0(transitive)
- Removed@ethersproject/logger@5.7.0(transitive)
- Removed@ethersproject/networks@5.7.1(transitive)
- Removed@ethersproject/properties@5.7.0(transitive)
- Removed@ethersproject/rlp@5.7.0(transitive)
- Removed@ethersproject/signing-key@5.7.0(transitive)
- Removed@ethersproject/strings@5.7.0(transitive)
- Removed@ethersproject/transactions@5.7.0(transitive)
- Removed@ethersproject/web@5.7.1(transitive)
- Removed@noble/hashes@1.5.0(transitive)
- Removed@types/bn.js@5.1.5(transitive)
- Removed@types/elliptic@6.4.18(transitive)
- Removed@types/ethereumjs-util@5.2.0(transitive)
- Removed@types/node@10.17.60(transitive)
- Removed@types/pbkdf2@3.1.2(transitive)
- Removed@types/secp256k1@4.0.6(transitive)
- Removed@usecapsule/core-sdk@1.15.0(transitive)
- Removed@usecapsule/user-management-client@1.12.0(transitive)
- Removedasynckit@0.4.0(transitive)
- Removedaxios@1.7.7(transitive)
- Removedbase-x@3.0.10(transitive)
- Removedbignumber.js@9.1.2(transitive)
- Removedblakejs@1.2.1(transitive)
- Removedbn.js@4.11.64.12.05.2.1(transitive)
- Removedbrorand@1.1.0(transitive)
- Removedbrowserify-aes@1.2.0(transitive)
- Removedbs58@4.0.1(transitive)
- Removedbs58check@2.1.2(transitive)
- Removedbuffer-to-arraybuffer@0.0.5(transitive)
- Removedbuffer-xor@1.0.3(transitive)
- Removedcipher-base@1.0.4(transitive)
- Removedcombined-stream@1.0.8(transitive)
- Removedcreate-hash@1.2.0(transitive)
- Removedcreate-hmac@1.1.7(transitive)
- Removeddecode-uri-component@0.2.2(transitive)
- Removeddecompress-response@3.3.0(transitive)
- Removeddelayed-stream@1.0.0(transitive)
- Removeddom-walk@0.1.2(transitive)
- Removedelliptic@6.5.46.5.7(transitive)
- Removedeth-lib@0.2.8(transitive)
- Removedethereum-bloom-filters@1.2.0(transitive)
- Removedethereum-cryptography@0.1.3(transitive)
- Removedethereumjs-util@5.2.17.1.5(transitive)
- Removedethjs-unit@0.1.6(transitive)
- Removedethjs-util@0.1.6(transitive)
- Removedevp_bytestokey@1.0.3(transitive)
- Removedfollow-redirects@1.15.9(transitive)
- Removedform-data@4.0.0(transitive)
- Removedfp-ts@2.16.9(transitive)
- Removedglobal@4.4.0(transitive)
- Removedhash-base@3.1.0(transitive)
- Removedhash.js@1.1.7(transitive)
- Removedhmac-drbg@1.0.1(transitive)
- Removedio-ts@2.0.1(transitive)
- Removedis-function@1.0.2(transitive)
- Removedis-hex-prefixed@1.0.0(transitive)
- Removedjs-sha3@0.8.0(transitive)
- Removedkeccak@3.0.4(transitive)
- Removedmd5.js@1.3.5(transitive)
- Removedmime-db@1.52.0(transitive)
- Removedmime-types@2.1.35(transitive)
- Removedmimic-response@1.0.1(transitive)
- Removedmin-document@2.19.0(transitive)
- Removedminimalistic-assert@1.0.1(transitive)
- Removedminimalistic-crypto-utils@1.0.1(transitive)
- Removednode-addon-api@2.0.2(transitive)
- Removednode-gyp-build@4.8.2(transitive)
- Removednumber-to-bn@1.7.0(transitive)
- Removedobject-assign@4.1.1(transitive)
- Removedobject-inspect@1.13.2(transitive)
- Removedonce@1.4.0(transitive)
- Removedparse-headers@2.0.5(transitive)
- Removedpbkdf2@3.1.2(transitive)
- Removedprocess@0.11.10(transitive)
- Removedproxy-from-env@1.1.0(transitive)
- Removedqs@6.13.0(transitive)
- Removedquery-string@5.1.1(transitive)
- Removedrandombytes@2.1.0(transitive)
- Removedreadable-stream@3.6.2(transitive)
- Removedripemd160@2.0.2(transitive)
- Removedrlp@2.2.7(transitive)
- Removedsafe-buffer@5.2.1(transitive)
- Removedscrypt-js@3.0.1(transitive)
- Removedsecp256k1@4.0.3(transitive)
- Removedsetimmediate@1.0.5(transitive)
- Removedsha.js@2.4.11(transitive)
- Removedside-channel@1.0.6(transitive)
- Removedsimple-concat@1.0.1(transitive)
- Removedsimple-get@2.8.2(transitive)
- Removedstrict-uri-encode@1.1.0(transitive)
- Removedstring_decoder@1.3.0(transitive)
- Removedstrip-hex-prefix@1.0.0(transitive)
- Removedtimed-out@4.0.1(transitive)
- Removedunderscore@1.12.1(transitive)
- Removedurl-set-query@1.0.0(transitive)
- Removedutf8@3.0.0(transitive)
- Removedutil-deprecate@1.0.2(transitive)
- Removedweb3-eth-abi@1.3.6(transitive)
- Removedweb3-utils@1.3.6(transitive)
- Removedwrappy@1.0.2(transitive)
- Removedxhr@2.6.0(transitive)
- Removedxhr-request@1.1.0(transitive)
- Removedxhr-request-promise@0.1.3(transitive)
- Removedxtend@4.0.2(transitive)