@getpara/server-sdk 2.0.0-alpha.7 → 2.0.0-alpha.71

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.
@@ -51,21 +51,24 @@ __export(ParaServer_exports, {
51
51
  });
52
52
  module.exports = __toCommonJS(ParaServer_exports);
53
53
  var import_core_sdk = __toESM(require("@getpara/core-sdk"));
54
- var Sentry = __toESM(require("@sentry/node"));
55
54
  var import_ServerUtils = require("./ServerUtils.js");
56
55
  class Para extends import_core_sdk.default {
57
- constructor(env, apiKey, opts) {
58
- super(env, apiKey, opts);
59
- if (env !== import_core_sdk.Environment.PROD && env !== import_core_sdk.Environment.DEV) {
60
- Sentry.init({
61
- environment: env.toLowerCase(),
62
- dsn: "https://2a26842d951255c2721fde5c1dd2b252@o4504568036720640.ingest.us.sentry.io/4508850906791936"
63
- });
64
- }
56
+ constructor(envOrApiKey, apiKeyOrOpts, opts) {
57
+ super(envOrApiKey, apiKeyOrOpts, opts);
58
+ }
59
+ ready() {
60
+ return __async(this, null, function* () {
61
+ this.isReady = true;
62
+ });
65
63
  }
66
64
  getPlatformUtils() {
67
65
  return new import_ServerUtils.ServerUtils();
68
66
  }
67
+ isPasskeySupported() {
68
+ return __async(this, null, function* () {
69
+ return false;
70
+ });
71
+ }
69
72
  /**
70
73
  * Claims a pregenerated wallet.
71
74
  *
@@ -15,6 +15,26 @@ var __copyProps = (to, from, except, desc) => {
15
15
  return to;
16
16
  };
17
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var __async = (__this, __arguments, generator) => {
19
+ return new Promise((resolve, reject) => {
20
+ var fulfilled = (value) => {
21
+ try {
22
+ step(generator.next(value));
23
+ } catch (e) {
24
+ reject(e);
25
+ }
26
+ };
27
+ var rejected = (value) => {
28
+ try {
29
+ step(generator.throw(value));
30
+ } catch (e) {
31
+ reject(e);
32
+ }
33
+ };
34
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
35
+ step((generator = generator.apply(__this, __arguments)).next());
36
+ });
37
+ };
18
38
  var ServerUtils_exports = {};
19
39
  __export(ServerUtils_exports, {
20
40
  ServerUtils: () => ServerUtils
@@ -68,7 +88,14 @@ class ServerUtils {
68
88
  return (0, import_signing.ed25519Sign)(ctx, userId, walletId, share, base64Bytes, sessionCookie);
69
89
  }
70
90
  openPopup(_popupUrl) {
71
- throw new Error("OpenPopup is not implemented in the ServerUtils class.");
91
+ return __async(this, null, function* () {
92
+ throw new Error("OpenPopup is not implemented in the ServerUtils class.");
93
+ });
94
+ }
95
+ initializeWorker(ctx) {
96
+ return __async(this, null, function* () {
97
+ return (0, import_keygen.initializeWorker)(ctx);
98
+ });
72
99
  }
73
100
  }
74
101
  // Annotate the CommonJS export names for ESM import in node:
@@ -1,9 +1,26 @@
1
1
  var __create = Object.create;
2
2
  var __defProp = Object.defineProperty;
3
+ var __defProps = Object.defineProperties;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
6
  var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
8
  var __getProtoOf = Object.getPrototypeOf;
6
9
  var __hasOwnProp = Object.prototype.hasOwnProperty;
10
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
12
+ var __spreadValues = (a, b) => {
13
+ for (var prop in b || (b = {}))
14
+ if (__hasOwnProp.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ if (__getOwnPropSymbols)
17
+ for (var prop of __getOwnPropSymbols(b)) {
18
+ if (__propIsEnum.call(b, prop))
19
+ __defNormalProp(a, prop, b[prop]);
20
+ }
21
+ return a;
22
+ };
23
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
7
24
  var __export = (target, all) => {
8
25
  for (var name in all)
9
26
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -49,6 +66,7 @@ var keygen_exports = {};
49
66
  __export(keygen_exports, {
50
67
  ed25519Keygen: () => ed25519Keygen,
51
68
  ed25519PreKeygen: () => ed25519PreKeygen,
69
+ initializeWorker: () => initializeWorker,
52
70
  isKeygenComplete: () => isKeygenComplete,
53
71
  isPreKeygenComplete: () => isPreKeygenComplete,
54
72
  keygen: () => keygen,
@@ -73,155 +91,257 @@ function isPreKeygenComplete(ctx, pregenIdentifier, pregenIdentifierType, wallet
73
91
  });
74
92
  }
75
93
  function keygen(ctx, userId, type, secretKey, sessionCookie, _emailProps = {}) {
76
- return new Promise((resolve) => __async(this, null, function* () {
94
+ return new Promise((resolve, reject) => __async(this, null, function* () {
77
95
  const workId = uuid.v4();
78
- const worker = yield (0, import_workerWrapper.setupWorker)(
79
- ctx,
80
- (res) => __async(this, null, function* () {
81
- yield (0, import_core_sdk.waitUntilTrue)(() => __async(this, null, function* () {
82
- return isKeygenComplete(ctx, userId, res.walletId);
83
- }), 15e3, 1e3);
84
- resolve({
85
- signer: res.signer,
86
- walletId: res.walletId,
87
- recoveryShare: null
88
- });
89
- }),
90
- workId
91
- );
92
- worker.postMessage({
93
- env: ctx.env,
94
- apiKey: ctx.apiKey,
95
- cosmosPrefix: ctx.cosmosPrefix,
96
- params: { userId, secretKey, type },
97
- functionType: "KEYGEN",
98
- offloadMPCComputationURL: ctx.offloadMPCComputationURL,
99
- disableWorkers: ctx.disableWorkers,
100
- sessionCookie,
101
- useDKLS: ctx.useDKLS,
102
- disableWebSockets: ctx.disableWebSockets,
103
- wasmOverride: ctx.wasmOverride,
104
- workId
105
- });
96
+ try {
97
+ const worker = yield (0, import_workerWrapper.setupWorker)(
98
+ ctx,
99
+ (res) => __async(this, null, function* () {
100
+ try {
101
+ yield (0, import_core_sdk.waitUntilTrue)(() => __async(this, null, function* () {
102
+ return isKeygenComplete(ctx, userId, res.walletId);
103
+ }), 15e3, 1e3);
104
+ resolve({
105
+ signer: res.signer,
106
+ walletId: res.walletId,
107
+ recoveryShare: null
108
+ });
109
+ } catch (error) {
110
+ reject(error);
111
+ }
112
+ }),
113
+ (error) => {
114
+ reject(error);
115
+ },
116
+ workId,
117
+ {
118
+ userId,
119
+ type,
120
+ functionType: "KEYGEN",
121
+ disableWorkers: ctx.disableWorkers,
122
+ disableWebSockets: ctx.disableWebSockets
123
+ }
124
+ );
125
+ worker.postMessage({
126
+ env: ctx.env,
127
+ apiKey: ctx.apiKey,
128
+ cosmosPrefix: ctx.cosmosPrefix,
129
+ params: { userId, secretKey, type },
130
+ functionType: "KEYGEN",
131
+ offloadMPCComputationURL: ctx.offloadMPCComputationURL,
132
+ disableWorkers: ctx.disableWorkers,
133
+ sessionCookie,
134
+ useDKLS: ctx.useDKLS,
135
+ disableWebSockets: ctx.disableWebSockets,
136
+ wasmOverride: ctx.wasmOverride,
137
+ workId
138
+ });
139
+ } catch (error) {
140
+ reject(error);
141
+ }
106
142
  }));
107
143
  }
108
144
  function preKeygen(ctx, pregenIdentifier, pregenIdentifierType, type, secretKey, _skipDistribute = false, partnerId, sessionCookie) {
109
- return new Promise((resolve) => __async(this, null, function* () {
145
+ return new Promise((resolve, reject) => __async(this, null, function* () {
110
146
  const workId = uuid.v4();
111
- const worker = yield (0, import_workerWrapper.setupWorker)(
112
- ctx,
113
- (res) => __async(this, null, function* () {
114
- yield (0, import_core_sdk.waitUntilTrue)(
115
- () => __async(this, null, function* () {
116
- return isPreKeygenComplete(ctx, pregenIdentifier, pregenIdentifierType, res.walletId);
117
- }),
118
- 15e3,
119
- 1e3
120
- );
121
- resolve({
122
- signer: res.signer,
123
- walletId: res.walletId,
124
- recoveryShare: null
125
- });
126
- }),
127
- workId
128
- );
129
- const email = void 0;
130
- const params = { pregenIdentifier, pregenIdentifierType, secretKey, partnerId, email, type };
131
- if (pregenIdentifierType === "EMAIL") {
132
- params.email = pregenIdentifier;
147
+ try {
148
+ const email = void 0;
149
+ const params = { pregenIdentifier, pregenIdentifierType, secretKey, partnerId, email, type };
150
+ if (pregenIdentifierType === "EMAIL") {
151
+ params.email = pregenIdentifier;
152
+ }
153
+ const worker = yield (0, import_workerWrapper.setupWorker)(
154
+ ctx,
155
+ (res) => __async(this, null, function* () {
156
+ try {
157
+ yield (0, import_core_sdk.waitUntilTrue)(
158
+ () => __async(this, null, function* () {
159
+ return isPreKeygenComplete(ctx, pregenIdentifier, pregenIdentifierType, res.walletId);
160
+ }),
161
+ 15e3,
162
+ 1e3
163
+ );
164
+ resolve({
165
+ signer: res.signer,
166
+ walletId: res.walletId,
167
+ recoveryShare: null
168
+ });
169
+ } catch (error) {
170
+ reject(error);
171
+ }
172
+ }),
173
+ (error) => {
174
+ reject(error);
175
+ },
176
+ workId,
177
+ __spreadProps(__spreadValues({}, params), {
178
+ secretKey: null,
179
+ functionType: "PREKEYGEN",
180
+ disableWorkers: ctx.disableWorkers,
181
+ disableWebSockets: ctx.disableWebSockets
182
+ })
183
+ );
184
+ worker.postMessage({
185
+ env: ctx.env,
186
+ apiKey: ctx.apiKey,
187
+ cosmosPrefix: ctx.cosmosPrefix,
188
+ params,
189
+ functionType: "PREKEYGEN",
190
+ offloadMPCComputationURL: ctx.offloadMPCComputationURL,
191
+ disableWorkers: ctx.disableWorkers,
192
+ sessionCookie,
193
+ useDKLS: ctx.useDKLS,
194
+ disableWebSockets: ctx.disableWebSockets,
195
+ wasmOverride: ctx.wasmOverride,
196
+ workId
197
+ });
198
+ } catch (error) {
199
+ reject(error);
133
200
  }
134
- worker.postMessage({
135
- env: ctx.env,
136
- apiKey: ctx.apiKey,
137
- cosmosPrefix: ctx.cosmosPrefix,
138
- params,
139
- functionType: "PREKEYGEN",
140
- offloadMPCComputationURL: ctx.offloadMPCComputationURL,
141
- disableWorkers: ctx.disableWorkers,
142
- sessionCookie,
143
- useDKLS: ctx.useDKLS,
144
- disableWebSockets: ctx.disableWebSockets,
145
- wasmOverride: ctx.wasmOverride,
146
- workId
147
- });
148
201
  }));
149
202
  }
150
203
  function ed25519Keygen(ctx, userId, sessionCookie, _emailProps = {}) {
151
- return new Promise((resolve) => __async(this, null, function* () {
204
+ return new Promise((resolve, reject) => __async(this, null, function* () {
152
205
  const workId = uuid.v4();
153
- const worker = yield (0, import_workerWrapper.setupWorker)(
154
- ctx,
155
- (res) => __async(this, null, function* () {
156
- yield (0, import_core_sdk.waitUntilTrue)(() => __async(this, null, function* () {
157
- return isKeygenComplete(ctx, userId, res.walletId);
158
- }), 15e3, 1e3);
159
- resolve({
160
- signer: res.signer,
161
- walletId: res.walletId,
162
- recoveryShare: null
163
- });
164
- }),
165
- workId
166
- );
167
- worker.postMessage({
168
- env: ctx.env,
169
- apiKey: ctx.apiKey,
170
- cosmosPrefix: ctx.cosmosPrefix,
171
- params: { userId },
172
- functionType: "ED25519_KEYGEN",
173
- disableWorkers: ctx.disableWorkers,
174
- sessionCookie,
175
- disableWebSockets: ctx.disableWebSockets,
176
- wasmOverride: ctx.wasmOverride,
177
- workId
178
- });
206
+ try {
207
+ const worker = yield (0, import_workerWrapper.setupWorker)(
208
+ ctx,
209
+ (res) => __async(this, null, function* () {
210
+ try {
211
+ yield (0, import_core_sdk.waitUntilTrue)(() => __async(this, null, function* () {
212
+ return isKeygenComplete(ctx, userId, res.walletId);
213
+ }), 15e3, 1e3);
214
+ resolve({
215
+ signer: res.signer,
216
+ walletId: res.walletId,
217
+ recoveryShare: null
218
+ });
219
+ } catch (error) {
220
+ reject(error);
221
+ }
222
+ }),
223
+ (error) => {
224
+ reject(error);
225
+ },
226
+ workId,
227
+ {
228
+ userId,
229
+ functionType: "ED25519_KEYGEN",
230
+ disableWorkers: ctx.disableWorkers,
231
+ disableWebSockets: ctx.disableWebSockets
232
+ }
233
+ );
234
+ worker.postMessage({
235
+ env: ctx.env,
236
+ apiKey: ctx.apiKey,
237
+ cosmosPrefix: ctx.cosmosPrefix,
238
+ params: { userId },
239
+ functionType: "ED25519_KEYGEN",
240
+ disableWorkers: ctx.disableWorkers,
241
+ sessionCookie,
242
+ disableWebSockets: ctx.disableWebSockets,
243
+ wasmOverride: ctx.wasmOverride,
244
+ workId
245
+ });
246
+ } catch (error) {
247
+ reject(error);
248
+ }
179
249
  }));
180
250
  }
181
251
  function ed25519PreKeygen(ctx, pregenIdentifier, pregenIdentifierType, sessionCookie) {
182
- return new Promise((resolve) => __async(this, null, function* () {
252
+ return new Promise((resolve, reject) => __async(this, null, function* () {
183
253
  const workId = uuid.v4();
184
- const worker = yield (0, import_workerWrapper.setupWorker)(
185
- ctx,
186
- (res) => __async(this, null, function* () {
187
- yield (0, import_core_sdk.waitUntilTrue)(
254
+ try {
255
+ const email = void 0;
256
+ const params = { pregenIdentifier, pregenIdentifierType, email };
257
+ if (pregenIdentifierType === "EMAIL") {
258
+ params.email = pregenIdentifier;
259
+ }
260
+ const worker = yield (0, import_workerWrapper.setupWorker)(
261
+ ctx,
262
+ (res) => __async(this, null, function* () {
263
+ try {
264
+ yield (0, import_core_sdk.waitUntilTrue)(
265
+ () => __async(this, null, function* () {
266
+ return isPreKeygenComplete(ctx, pregenIdentifier, pregenIdentifierType, res.walletId);
267
+ }),
268
+ 15e3,
269
+ 1e3
270
+ );
271
+ resolve({
272
+ signer: res.signer,
273
+ walletId: res.walletId,
274
+ recoveryShare: null
275
+ });
276
+ } catch (error) {
277
+ reject(error);
278
+ }
279
+ }),
280
+ (error) => {
281
+ reject(error);
282
+ },
283
+ workId,
284
+ {
285
+ params,
286
+ functionType: "ED25519_PREKEYGEN",
287
+ disableWorkers: ctx.disableWorkers,
288
+ disableWebSockets: ctx.disableWebSockets
289
+ }
290
+ );
291
+ worker.postMessage({
292
+ env: ctx.env,
293
+ apiKey: ctx.apiKey,
294
+ cosmosPrefix: ctx.cosmosPrefix,
295
+ params,
296
+ functionType: "ED25519_PREKEYGEN",
297
+ disableWorkers: ctx.disableWorkers,
298
+ sessionCookie,
299
+ disableWebSockets: ctx.disableWebSockets,
300
+ wasmOverride: ctx.wasmOverride,
301
+ workId
302
+ });
303
+ } catch (error) {
304
+ reject(error);
305
+ }
306
+ }));
307
+ }
308
+ function initializeWorker(ctx) {
309
+ return __async(this, null, function* () {
310
+ return new Promise((resolve, reject) => __async(this, null, function* () {
311
+ const workId = uuid.v4();
312
+ try {
313
+ const worker = yield (0, import_workerWrapper.setupWorker)(
314
+ ctx,
188
315
  () => __async(this, null, function* () {
189
- return isPreKeygenComplete(ctx, pregenIdentifier, pregenIdentifierType, res.walletId);
316
+ resolve();
190
317
  }),
191
- 15e3,
192
- 1e3
318
+ (error) => {
319
+ reject(error);
320
+ },
321
+ workId,
322
+ {
323
+ functionType: "INIT",
324
+ disableWorkers: ctx.disableWorkers,
325
+ disableWebSockets: ctx.disableWebSockets
326
+ }
193
327
  );
194
- resolve({
195
- signer: res.signer,
196
- walletId: res.walletId,
197
- recoveryShare: null
328
+ worker.postMessage({
329
+ env: ctx.env,
330
+ apiKey: ctx.apiKey,
331
+ functionType: "INIT",
332
+ workId
198
333
  });
199
- }),
200
- workId
201
- );
202
- const email = void 0;
203
- const params = { pregenIdentifier, pregenIdentifierType, email };
204
- if (pregenIdentifierType === "EMAIL") {
205
- params.email = pregenIdentifier;
206
- }
207
- worker.postMessage({
208
- env: ctx.env,
209
- apiKey: ctx.apiKey,
210
- cosmosPrefix: ctx.cosmosPrefix,
211
- params,
212
- functionType: "ED25519_PREKEYGEN",
213
- disableWorkers: ctx.disableWorkers,
214
- sessionCookie,
215
- disableWebSockets: ctx.disableWebSockets,
216
- wasmOverride: ctx.wasmOverride,
217
- workId
218
- });
219
- }));
334
+ } catch (error) {
335
+ reject(error);
336
+ }
337
+ }));
338
+ });
220
339
  }
221
340
  // Annotate the CommonJS export names for ESM import in node:
222
341
  0 && (module.exports = {
223
342
  ed25519Keygen,
224
343
  ed25519PreKeygen,
344
+ initializeWorker,
225
345
  isKeygenComplete,
226
346
  isPreKeygenComplete,
227
347
  keygen,
@@ -54,29 +54,42 @@ var uuid = __toESM(require("uuid"));
54
54
  var import_workerWrapper = require("../workers/workerWrapper.js");
55
55
  function getPrivateKey(ctx, userId, walletId, share, sessionCookie) {
56
56
  return __async(this, null, function* () {
57
- return yield new Promise((resolve) => __async(this, null, function* () {
57
+ return new Promise((resolve, reject) => __async(this, null, function* () {
58
58
  const workId = uuid.v4();
59
- const worker = yield (0, import_workerWrapper.setupWorker)(
60
- ctx,
61
- (res) => __async(this, null, function* () {
62
- resolve(res.privateKey);
63
- }),
64
- workId
65
- );
66
- worker.postMessage({
67
- env: ctx.env,
68
- apiKey: ctx.apiKey,
69
- cosmosPrefix: ctx.cosmosPrefix,
70
- params: { share, walletId, userId },
71
- functionType: "GET_PRIVATE_KEY",
72
- offloadMPCComputationURL: ctx.offloadMPCComputationURL,
73
- disableWorkers: ctx.disableWorkers,
74
- sessionCookie,
75
- useDKLS: ctx.useDKLS,
76
- disableWebSockets: ctx.disableWebSockets,
77
- wasmOverride: ctx.wasmOverride,
78
- workId
79
- });
59
+ try {
60
+ const worker = yield (0, import_workerWrapper.setupWorker)(
61
+ ctx,
62
+ (res) => __async(this, null, function* () {
63
+ resolve(res.privateKey);
64
+ }),
65
+ (error) => {
66
+ reject(error);
67
+ },
68
+ workId,
69
+ {
70
+ params: { walletId, userId },
71
+ functionType: "GET_PRIVATE_KEY",
72
+ disableWorkers: ctx.disableWorkers,
73
+ disableWebSockets: ctx.disableWebSockets
74
+ }
75
+ );
76
+ worker.postMessage({
77
+ env: ctx.env,
78
+ apiKey: ctx.apiKey,
79
+ cosmosPrefix: ctx.cosmosPrefix,
80
+ params: { share, walletId, userId },
81
+ functionType: "GET_PRIVATE_KEY",
82
+ offloadMPCComputationURL: ctx.offloadMPCComputationURL,
83
+ disableWorkers: ctx.disableWorkers,
84
+ sessionCookie,
85
+ useDKLS: ctx.useDKLS,
86
+ disableWebSockets: ctx.disableWebSockets,
87
+ wasmOverride: ctx.wasmOverride,
88
+ workId
89
+ });
90
+ } catch (error) {
91
+ reject(error);
92
+ }
80
93
  }));
81
94
  });
82
95
  }