@sogni-ai/sogni-client 3.0.0-alpha.9 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/CHANGELOG.md +336 -0
  2. package/README.md +23 -27
  3. package/dist/Account/CurrentAccount.d.ts +3 -3
  4. package/dist/Account/CurrentAccount.js +12 -4
  5. package/dist/Account/CurrentAccount.js.map +1 -1
  6. package/dist/Account/index.d.ts +42 -13
  7. package/dist/Account/index.js +132 -29
  8. package/dist/Account/index.js.map +1 -1
  9. package/dist/Account/types.d.ts +21 -0
  10. package/dist/ApiClient/WebSocketClient/events.d.ts +55 -7
  11. package/dist/ApiClient/WebSocketClient/index.js +1 -1
  12. package/dist/ApiClient/index.d.ts +4 -2
  13. package/dist/ApiClient/index.js +12 -3
  14. package/dist/ApiClient/index.js.map +1 -1
  15. package/dist/ApiGroup.d.ts +0 -3
  16. package/dist/ApiGroup.js +0 -1
  17. package/dist/ApiGroup.js.map +1 -1
  18. package/dist/Projects/Job.d.ts +43 -0
  19. package/dist/Projects/Job.js +76 -0
  20. package/dist/Projects/Job.js.map +1 -1
  21. package/dist/Projects/Project.d.ts +1 -1
  22. package/dist/Projects/Project.js +9 -18
  23. package/dist/Projects/Project.js.map +1 -1
  24. package/dist/Projects/createJobRequestMessage.js +1 -1
  25. package/dist/Projects/createJobRequestMessage.js.map +1 -1
  26. package/dist/Projects/index.d.ts +7 -2
  27. package/dist/Projects/index.js +48 -10
  28. package/dist/Projects/index.js.map +1 -1
  29. package/dist/Projects/types/ControlNetParams.d.ts +7 -2
  30. package/dist/Projects/types/events.d.ts +6 -0
  31. package/dist/Projects/types/index.d.ts +16 -3
  32. package/dist/Projects/utils.d.ts +2 -0
  33. package/dist/Projects/utils.js +14 -0
  34. package/dist/Projects/utils.js.map +1 -0
  35. package/dist/index.d.ts +10 -6
  36. package/dist/index.js +6 -15
  37. package/dist/index.js.map +1 -1
  38. package/dist/lib/utils.d.ts +1 -0
  39. package/dist/lib/utils.js +15 -0
  40. package/dist/lib/utils.js.map +1 -1
  41. package/dist/types/token.d.ts +1 -0
  42. package/dist/types/token.js +3 -0
  43. package/dist/types/token.js.map +1 -0
  44. package/dist/version.d.ts +1 -1
  45. package/dist/version.js +2 -1
  46. package/dist/version.js.map +1 -1
  47. package/package.json +1 -1
  48. package/src/Account/CurrentAccount.ts +14 -6
  49. package/src/Account/index.ts +163 -59
  50. package/src/Account/types.ts +26 -0
  51. package/src/ApiClient/WebSocketClient/events.ts +59 -7
  52. package/src/ApiClient/WebSocketClient/index.ts +1 -1
  53. package/src/ApiClient/index.ts +15 -4
  54. package/src/ApiGroup.ts +0 -4
  55. package/src/Projects/Job.ts +98 -0
  56. package/src/Projects/Project.ts +11 -19
  57. package/src/Projects/createJobRequestMessage.ts +2 -1
  58. package/src/Projects/index.ts +53 -13
  59. package/src/Projects/types/ControlNetParams.ts +8 -2
  60. package/src/Projects/types/events.ts +6 -0
  61. package/src/Projects/types/index.ts +17 -3
  62. package/src/Projects/utils.ts +12 -0
  63. package/src/Stats/index.ts +2 -2
  64. package/src/index.ts +23 -19
  65. package/src/lib/utils.ts +4 -0
  66. package/src/types/token.ts +1 -0
  67. package/src/version.ts +2 -1
@@ -1,7 +1,7 @@
1
- import { AccountCreateData, AccountCreateParams, BalanceData, LoginData, Reward, TxHistoryEntry, TxHistoryParams } from './types';
1
+ import { AccountCreateData, AccountCreateParams, Balances, ClaimOptions, FullBalances, LoginData, Reward, RewardsQuery, TxHistoryEntry, TxHistoryParams } from './types';
2
2
  import ApiGroup, { ApiConfig } from '../ApiGroup';
3
3
  import { Wallet } from 'ethers';
4
- import { ApiReponse } from '../ApiClient';
4
+ import { ApiResponse } from '../ApiClient';
5
5
  import CurrentAccount from './CurrentAccount';
6
6
  import { SupernetType } from '../ApiClient/WebSocketClient/types';
7
7
  import { Tokens } from '../lib/AuthManager';
@@ -23,7 +23,12 @@ declare class AccountApi extends ApiGroup {
23
23
  private handleServerConnected;
24
24
  private handleServerDisconnected;
25
25
  private handleAuthUpdated;
26
- private getNonce;
26
+ /**
27
+ * Get the nonce for the given wallet address.
28
+ * @param walletAddress
29
+ * @internal
30
+ */
31
+ getNonce(walletAddress: string): Promise<string>;
27
32
  /**
28
33
  * Create Ethers.js Wallet instance from username and password.
29
34
  * This method is used internally to create a wallet for the user.
@@ -99,16 +104,27 @@ declare class AccountApi extends ApiGroup {
99
104
  * Refresh the balance of the current account.
100
105
  *
101
106
  * Usually, you don't need to call this method manually. Balance is updated automatically
102
- * through WebSocket events. But you can call this method to force a balance refresh.
107
+ * through WebSocket events. But you can call this method to force a balance refresh. Note that
108
+ * will also trigger updated event on the current account.
103
109
  *
104
110
  * @example Refresh user account balance
105
111
  * ```typescript
106
112
  * const balance = await client.account.refreshBalance();
107
113
  * console.log(balance);
108
- * // { net: '100.000000', settled: '100.000000', credit: '0.000000', debit: '0.000000' }
109
114
  * ```
110
115
  */
111
- refreshBalance(): Promise<BalanceData>;
116
+ refreshBalance(): Promise<Balances>;
117
+ /**
118
+ * Get the account balance of the current account.
119
+ * This method returns the account balance of the current user, including settled, credit, debit, and unclaimed earnings amounts.
120
+ *
121
+ * @example Get the account balance of the current user
122
+ * ```typescript
123
+ * const balance = await client.account.accountBalance();
124
+ * console.log(balance);
125
+ * ```
126
+ */
127
+ accountBalance(): Promise<FullBalances>;
112
128
  /**
113
129
  * Get the balance of the wallet address.
114
130
  *
@@ -125,7 +141,8 @@ declare class AccountApi extends ApiGroup {
125
141
  * @param walletAddress
126
142
  */
127
143
  walletBalance(walletAddress: string): Promise<{
128
- token: string;
144
+ sogni: string;
145
+ spark: string;
129
146
  ether: string;
130
147
  }>;
131
148
  /**
@@ -133,7 +150,7 @@ declare class AccountApi extends ApiGroup {
133
150
  * @internal
134
151
  * @param username
135
152
  */
136
- validateUsername(username: string): Promise<import("../ApiClient").ApiErrorResponse | ApiReponse<undefined>>;
153
+ validateUsername(username: string): Promise<import("../ApiClient").ApiErrorResponse | ApiResponse<undefined>>;
137
154
  /**
138
155
  * Switch between fast and relaxed networks.
139
156
  * This will change default network used to process projects. After switching, client will receive
@@ -171,14 +188,16 @@ declare class AccountApi extends ApiGroup {
171
188
  * Get the rewards of the current account.
172
189
  * @internal
173
190
  */
174
- rewards(): Promise<Reward[]>;
191
+ rewards(query?: RewardsQuery): Promise<Reward[]>;
175
192
  /**
176
193
  * Claim rewards by reward IDs.
177
194
  * @internal
178
195
  * @param rewardIds
179
- * @param turnstileToken - Turnstile token, required to claim rewards
196
+ * @param options - Options for claiming rewards
197
+ * @param options.turnstileToken - Turnstile token for anti-bot protection
198
+ * @param options.provider - Provider name for the rewards
180
199
  */
181
- claimRewards(rewardIds: string[], turnstileToken?: string): Promise<void>;
200
+ claimRewards(rewardIds: string[], { turnstileToken, provider }?: ClaimOptions): Promise<void>;
182
201
  /**
183
202
  * Withdraw funds from the current account to wallet.
184
203
  * @example withdraw to current wallet address
@@ -189,7 +208,7 @@ declare class AccountApi extends ApiGroup {
189
208
  * @param password - account password
190
209
  * @param amount - amount of tokens to withdraw from account to wallet
191
210
  */
192
- withdraw(password: string, amount: number): Promise<void>;
211
+ withdraw(password: string, amount: number | string): Promise<void>;
193
212
  /**
194
213
  * Deposit tokens from wallet to account
195
214
  * @example withdraw to current wallet address
@@ -200,6 +219,16 @@ declare class AccountApi extends ApiGroup {
200
219
  * @param password - account password
201
220
  * @param amount - amount to transfer
202
221
  */
203
- deposit(password: string, amount: number): Promise<void>;
222
+ deposit(password: string, amount: number | string): Promise<void>;
223
+ private _deposit;
224
+ /**
225
+ * Approve SOGNI token usage for the specified spender.
226
+ * @internal
227
+ *
228
+ * @param password - user account password
229
+ * @param spender - Spender type, either 'account' for deposit or 'staker' for staking contract
230
+ * @param provider - Provider name, defaults to 'base', can be 'base', 'etherlink', etc.
231
+ */
232
+ approveTokenUsage(password: string, spender: 'account' | 'staker', provider?: string): Promise<void>;
204
233
  }
205
234
  export default AccountApi;
@@ -16,6 +16,13 @@ const ApiGroup_1 = __importDefault(require("../ApiGroup"));
16
16
  const ethers_1 = require("ethers");
17
17
  const ApiClient_1 = require("../ApiClient");
18
18
  const CurrentAccount_1 = __importDefault(require("./CurrentAccount"));
19
+ const utils_1 = require("../lib/utils");
20
+ const MAX_DEPOSIT_ATTEMPTS = 4;
21
+ var ErrorCode;
22
+ (function (ErrorCode) {
23
+ ErrorCode[ErrorCode["INSUFFICIENT_BALANCE"] = 123] = "INSUFFICIENT_BALANCE";
24
+ ErrorCode[ErrorCode["INSUFFICIENT_ALLOWANCE"] = 149] = "INSUFFICIENT_ALLOWANCE";
25
+ })(ErrorCode || (ErrorCode = {}));
19
26
  /**
20
27
  * Account API methods that let you interact with the user's account.
21
28
  * Can be accessed via `client.account`. Look for more samples below.
@@ -56,6 +63,11 @@ class AccountApi extends ApiGroup_1.default {
56
63
  this.currentAccount._update({ walletAddress, token, refreshToken });
57
64
  }
58
65
  }
66
+ /**
67
+ * Get the nonce for the given wallet address.
68
+ * @param walletAddress
69
+ * @internal
70
+ */
59
71
  getNonce(walletAddress) {
60
72
  return __awaiter(this, void 0, void 0, function* () {
61
73
  const res = yield this.client.rest.post('/v1/account/nonce', {
@@ -82,7 +94,7 @@ class AccountApi extends ApiGroup_1.default {
82
94
  const pwd = (0, ethers_1.toUtf8Bytes)(username.toLowerCase() + password);
83
95
  const salt = (0, ethers_1.toUtf8Bytes)('sogni-salt-value');
84
96
  const pkey = (0, ethers_1.pbkdf2)(pwd, salt, 10000, 32, 'sha256');
85
- return new ethers_1.Wallet(pkey, this.provider);
97
+ return new ethers_1.Wallet(pkey);
86
98
  }
87
99
  /**
88
100
  * Create a new account with the given username, email, and password.
@@ -193,19 +205,35 @@ class AccountApi extends ApiGroup_1.default {
193
205
  * Refresh the balance of the current account.
194
206
  *
195
207
  * Usually, you don't need to call this method manually. Balance is updated automatically
196
- * through WebSocket events. But you can call this method to force a balance refresh.
208
+ * through WebSocket events. But you can call this method to force a balance refresh. Note that
209
+ * will also trigger updated event on the current account.
197
210
  *
198
211
  * @example Refresh user account balance
199
212
  * ```typescript
200
213
  * const balance = await client.account.refreshBalance();
201
214
  * console.log(balance);
202
- * // { net: '100.000000', settled: '100.000000', credit: '0.000000', debit: '0.000000' }
203
215
  * ```
204
216
  */
205
217
  refreshBalance() {
206
218
  return __awaiter(this, void 0, void 0, function* () {
207
- const res = yield this.client.rest.get('/v1/account/balance');
208
- this.currentAccount._update({ balance: res.data });
219
+ const balance = yield this.accountBalance();
220
+ this.currentAccount._update({ balance: balance });
221
+ return balance;
222
+ });
223
+ }
224
+ /**
225
+ * Get the account balance of the current account.
226
+ * This method returns the account balance of the current user, including settled, credit, debit, and unclaimed earnings amounts.
227
+ *
228
+ * @example Get the account balance of the current user
229
+ * ```typescript
230
+ * const balance = await client.account.accountBalance();
231
+ * console.log(balance);
232
+ * ```
233
+ */
234
+ accountBalance() {
235
+ return __awaiter(this, void 0, void 0, function* () {
236
+ const res = yield this.client.rest.get('/v3/account/balance');
209
237
  return res.data;
210
238
  });
211
239
  }
@@ -226,7 +254,7 @@ class AccountApi extends ApiGroup_1.default {
226
254
  */
227
255
  walletBalance(walletAddress) {
228
256
  return __awaiter(this, void 0, void 0, function* () {
229
- const res = yield this.client.rest.get('/v1/wallet/balance', {
257
+ const res = yield this.client.rest.get('/v2/wallet/balance', {
230
258
  walletAddress
231
259
  });
232
260
  return res.data;
@@ -299,11 +327,18 @@ class AccountApi extends ApiGroup_1.default {
299
327
  */
300
328
  transactionHistory(params) {
301
329
  return __awaiter(this, void 0, void 0, function* () {
302
- const res = yield this.client.rest.get('/v1/transactions/list', {
330
+ const query = {
303
331
  status: params.status,
304
332
  address: params.address,
305
333
  limit: params.limit.toString()
306
- });
334
+ };
335
+ if (params.offset) {
336
+ query.offset = params.offset.toString();
337
+ }
338
+ if (params.provider) {
339
+ query.provider = params.provider;
340
+ }
341
+ const res = yield this.client.rest.get('/v1/transactions/list', query);
307
342
  return {
308
343
  entries: res.data.transactions.map((tx) => ({
309
344
  id: tx.id,
@@ -313,6 +348,7 @@ class AccountApi extends ApiGroup_1.default {
313
348
  status: tx.status,
314
349
  role: tx.role,
315
350
  amount: tx.amount,
351
+ tokenType: tx.tokenType,
316
352
  description: tx.description,
317
353
  source: tx.source,
318
354
  endTime: new Date(tx.endTime),
@@ -327,17 +363,19 @@ class AccountApi extends ApiGroup_1.default {
327
363
  * @internal
328
364
  */
329
365
  rewards() {
330
- return __awaiter(this, void 0, void 0, function* () {
331
- const r = yield this.client.rest.get('/v2/account/rewards');
366
+ return __awaiter(this, arguments, void 0, function* (query = {}) {
367
+ const r = yield this.client.rest.get('/v4/account/rewards', query);
332
368
  return r.data.rewards.map((raw) => ({
333
369
  id: raw.id,
334
370
  type: raw.type,
335
371
  title: raw.title,
336
372
  description: raw.description,
337
373
  amount: raw.amount,
374
+ tokenType: raw.tokenType,
338
375
  claimed: !!raw.claimed,
339
376
  canClaim: !!raw.canClaim,
340
377
  lastClaim: new Date(raw.lastClaimTimestamp * 1000),
378
+ provider: query.provider || 'base',
341
379
  nextClaim: raw.lastClaimTimestamp && raw.claimResetFrequencySec > -1
342
380
  ? new Date(raw.lastClaimTimestamp * 1000 + raw.claimResetFrequencySec * 1000)
343
381
  : null
@@ -348,14 +386,20 @@ class AccountApi extends ApiGroup_1.default {
348
386
  * Claim rewards by reward IDs.
349
387
  * @internal
350
388
  * @param rewardIds
351
- * @param turnstileToken - Turnstile token, required to claim rewards
389
+ * @param options - Options for claiming rewards
390
+ * @param options.turnstileToken - Turnstile token for anti-bot protection
391
+ * @param options.provider - Provider name for the rewards
352
392
  */
353
- claimRewards(rewardIds, turnstileToken) {
354
- return __awaiter(this, void 0, void 0, function* () {
355
- yield this.client.rest.post('/v2/account/reward/claim', {
393
+ claimRewards(rewardIds_1) {
394
+ return __awaiter(this, arguments, void 0, function* (rewardIds, { turnstileToken, provider } = {}) {
395
+ const payload = {
356
396
  claims: rewardIds,
357
- turnstileToken
358
- });
397
+ provider: provider || 'base'
398
+ };
399
+ if (turnstileToken) {
400
+ payload.turnstileToken = turnstileToken;
401
+ }
402
+ yield this.client.rest.post('/v3/account/reward/claim', payload);
359
403
  });
360
404
  }
361
405
  /**
@@ -377,6 +421,13 @@ class AccountApi extends ApiGroup_1.default {
377
421
  walletAddress: walletAddress,
378
422
  amount: (0, ethers_1.parseEther)(amount.toString()).toString()
379
423
  };
424
+ if (walletAddress !== this.currentAccount.walletAddress) {
425
+ throw new ApiClient_1.ApiError(400, {
426
+ status: 'error',
427
+ message: 'Incorrect password',
428
+ errorCode: 0
429
+ });
430
+ }
380
431
  const signature = yield this.eip712.signTypedData(wallet, 'withdraw', Object.assign(Object.assign({}, payload), { nonce }));
381
432
  yield this.client.rest.post('/v1/account/token/withdraw', Object.assign(Object.assign({}, payload), { signature: signature }));
382
433
  });
@@ -393,20 +444,72 @@ class AccountApi extends ApiGroup_1.default {
393
444
  */
394
445
  deposit(password, amount) {
395
446
  return __awaiter(this, void 0, void 0, function* () {
447
+ return this._deposit(password, amount, 1);
448
+ });
449
+ }
450
+ _deposit(password_1, amount_1) {
451
+ return __awaiter(this, arguments, void 0, function* (password, amount, attemptCount = 1) {
396
452
  const wallet = this.getWallet(this.currentAccount.username, password);
397
- const walletAddress = wallet.address;
398
- const nonce = yield this.getNonce(walletAddress);
399
- const payload = {
400
- walletAddress,
401
- amount: (0, ethers_1.parseEther)(amount.toString()).toString()
402
- };
403
- const { data } = yield this.client.rest.post('/v1/account/token/deposit/permit', payload);
404
- const { deadline } = data.message;
405
- const permitSig = yield wallet.signTypedData(data.domain, data.types, data.message);
406
- const permitSignature = ethers_1.Signature.from(permitSig);
407
- const depositPayload = Object.assign(Object.assign({}, payload), { deadline, v: permitSignature.v, r: permitSignature.r, s: permitSignature.s });
408
- const depositSignature = yield this.eip712.signTypedData(wallet, 'deposit', Object.assign(Object.assign({}, depositPayload), { nonce }));
409
- yield this.client.rest.post('/v1/account/token/deposit', Object.assign(Object.assign({}, depositPayload), { signature: depositSignature }));
453
+ if (wallet.address !== this.currentAccount.walletAddress) {
454
+ throw new ApiClient_1.ApiError(400, {
455
+ status: 'error',
456
+ message: 'Incorrect password',
457
+ errorCode: 0
458
+ });
459
+ }
460
+ try {
461
+ yield this.client.rest.post('/v3/account/token/deposit', {
462
+ walletAddress: wallet.address,
463
+ amount: (0, ethers_1.parseEther)(amount.toString()).toString(),
464
+ provider: 'base'
465
+ });
466
+ }
467
+ catch (error) {
468
+ if (error instanceof ApiClient_1.ApiError) {
469
+ if (error.payload.errorCode === ErrorCode.INSUFFICIENT_ALLOWANCE) {
470
+ // If this is the first attempt, we need to approve the token usage,
471
+ // otherwise we can retry the deposit directly.
472
+ if (attemptCount === 1) {
473
+ yield this.approveTokenUsage(password, 'account');
474
+ }
475
+ if (attemptCount >= MAX_DEPOSIT_ATTEMPTS) {
476
+ throw error;
477
+ }
478
+ yield (0, utils_1.delay)(10000); // Wait for the approval transaction to be processed
479
+ yield this._deposit(password, amount, attemptCount + 1);
480
+ return;
481
+ }
482
+ throw error;
483
+ }
484
+ throw error;
485
+ }
486
+ });
487
+ }
488
+ /**
489
+ * Approve SOGNI token usage for the specified spender.
490
+ * @internal
491
+ *
492
+ * @param password - user account password
493
+ * @param spender - Spender type, either 'account' for deposit or 'staker' for staking contract
494
+ * @param provider - Provider name, defaults to 'base', can be 'base', 'etherlink', etc.
495
+ */
496
+ approveTokenUsage(password_1, spender_1) {
497
+ return __awaiter(this, arguments, void 0, function* (password, spender, provider = 'base') {
498
+ const wallet = this.getWallet(this.currentAccount.username, password);
499
+ const permitR = yield this.client.rest.post('/v1/contract/token/approve/permit', {
500
+ walletAddress: wallet.address,
501
+ spender: spender,
502
+ provider: provider
503
+ });
504
+ const { domain, types, message } = permitR.data;
505
+ const signature = yield wallet.signTypedData(domain, types, message);
506
+ yield this.client.rest.post('/v1/contract/token/approve', {
507
+ walletAddress: wallet.address,
508
+ spender: spender,
509
+ provider: provider,
510
+ deadline: message.deadline,
511
+ approveSignature: signature
512
+ });
410
513
  });
411
514
  }
412
515
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Account/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAYA,2DAAkD;AAClD,mCAA4E;AAC5E,4CAAoD;AACpD,sEAA8C;AAI9C;;;;;;;;;;GAUG;AACH,MAAM,UAAW,SAAQ,kBAAQ;IAG/B,YAAY,MAAiB;QAC3B,KAAK,CAAC,MAAM,CAAC,CAAC;QAHP,mBAAc,GAAG,IAAI,wBAAc,EAAE,CAAC;QAI7C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5E,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACnE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACzE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACpE,CAAC;IAEO,mBAAmB,CAAC,IAAiB;QAC3C,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,CAAC;IAEO,qBAAqB,CAAC,EAAE,OAAO,EAA6B;QAClE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;YAC1B,aAAa,EAAE,WAAW;YAC1B,OAAO;SACR,CAAC,CAAC;IACL,CAAC;IAEO,wBAAwB;QAC9B,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;IAC/B,CAAC;IAEO,iBAAiB,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAoB;QAChF,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAEa,QAAQ,CAAC,aAAqB;;YAC1C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAoB,mBAAmB,EAAE;gBAC9E,aAAa;aACd,CAAC,CAAC;YACH,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;QACxB,CAAC;KAAA;IAED;;;;;;;;;;;;;OAaG;IACH,SAAS,CAAC,QAAgB,EAAE,QAAgB;QAC1C,MAAM,GAAG,GAAG,IAAA,oBAAW,EAAC,QAAQ,CAAC,WAAW,EAAE,GAAG,QAAQ,CAAC,CAAC;QAC3D,MAAM,IAAI,GAAG,IAAA,oBAAW,EAAC,kBAAkB,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,IAAA,eAAM,EAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;QACpD,OAAO,IAAI,eAAM,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED;;;OAGG;IACG,MAAM;6DAAC,EACX,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,SAAS,EACT,cAAc,EACd,YAAY,EACQ;YACpB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAClD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,OAAO,GAAG;gBACd,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;gBACxB,QAAQ;gBACR,KAAK;gBACL,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5B,aAAa,EAAE,MAAM,CAAC,OAAO;gBAC7B,cAAc;aACf,CAAC;YACF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,QAAQ,kCAAO,OAAO,KAAE,KAAK,IAAG,CAAC;YAC3F,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAgC,oBAAoB,kCACtF,OAAO,KACV,YAAY;gBACZ,SAAS,IACT,CAAC;YACH,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,YAAY,EAAE,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;YAC9F,OAAO,GAAG,CAAC,IAAI,CAAC;QAClB,CAAC;KAAA;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACG,QAAQ,CAAC,QAAgB,EAAE,MAAc;;YAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;gBAC1B,QAAQ;gBACR,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa;aAC9C,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;;;;;;;;;;OAWG;IACG,KAAK,CAAC,QAAgB,EAAE,QAAgB;;YAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAClD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,gBAAgB,EAAE;gBAC1E,aAAa,EAAE,MAAM,CAAC,OAAO;gBAC7B,KAAK;aACN,CAAC,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAwB,mBAAmB,EAAE;gBAClF,aAAa,EAAE,MAAM,CAAC,OAAO;gBAC7B,SAAS;aACV,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,YAAY,EAAE,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;YAC9F,OAAO,GAAG,CAAC,IAAI,CAAC;QAClB,CAAC;KAAA;IAED;;;;;;;;OAQG;IACG,MAAM;;YACV,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;gBACtD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;YAClD,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACzB,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;QAC/B,CAAC;KAAA;IAED;;;;;;;;;;;;OAYG;IACG,cAAc;;YAClB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAA0B,qBAAqB,CAAC,CAAC;YACvF,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YACnD,OAAO,GAAG,CAAC,IAAI,CAAC;QAClB,CAAC;KAAA;IAED;;;;;;;;;;;;;;OAcG;IACG,aAAa,CAAC,aAAqB;;YACvC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CACpC,oBAAoB,EACpB;gBACE,aAAa;aACd,CACF,CAAC;YACF,OAAO,GAAG,CAAC,IAAI,CAAC;QAClB,CAAC;KAAA;IAED;;;;OAIG;IACG,gBAAgB,CAAC,QAAgB;;YACrC,IAAI,CAAC;gBACH,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAwB,+BAA+B,EAAE;oBACzF,QAAQ;iBACT,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,CAAC,YAAY,oBAAQ,EAAE,CAAC;oBAC1B,4BAA4B;oBAC5B,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,KAAK,GAAG,EAAE,CAAC;wBAChC,OAAO,CAAC,CAAC,OAAO,CAAC;oBACnB,CAAC;gBACH,CAAC;gBACD,MAAM,CAAC,CAAC;YACV,CAAC;QACH,CAAC;KAAA;IAED;;;;;;;;;;;;OAYG;IACG,aAAa,CAAC,OAAqB;;YACvC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;gBAC1B,aAAa,EAAE,WAAW;gBAC1B,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YACnE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;gBAC1B,aAAa,EAAE,WAAW;gBAC1B,OAAO,EAAE,UAAU;aACpB,CAAC,CAAC;YACH,OAAO,UAAU,CAAC;QACpB,CAAC;KAAA;IAED;;;;;;;;;;;;;;OAcG;IACG,kBAAkB,CACtB,MAAuB;;YAEvB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAA4B,uBAAuB,EAAE;gBACzF,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE;aAC/B,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAChC,CAAC,EAAE,EAAkB,EAAE,CAAC,CAAC;oBACvB,EAAE,EAAE,EAAE,CAAC,EAAE;oBACT,OAAO,EAAE,EAAE,CAAC,OAAO;oBACnB,UAAU,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC;oBACnC,UAAU,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC;oBACnC,MAAM,EAAE,EAAE,CAAC,MAAM;oBACjB,IAAI,EAAE,EAAE,CAAC,IAAI;oBACb,MAAM,EAAE,EAAE,CAAC,MAAM;oBACjB,WAAW,EAAE,EAAE,CAAC,WAAW;oBAC3B,MAAM,EAAE,EAAE,CAAC,MAAM;oBACjB,OAAO,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;oBAC7B,IAAI,EAAE,EAAE,CAAC,IAAI;iBACd,CAAC,CACH;gBACD,IAAI,kCACC,MAAM,KACT,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,GACtB;aACF,CAAC;QACJ,CAAC;KAAA;IAED;;;OAGG;IACG,OAAO;;YACX,MAAM,CAAC,GACL,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAuC,qBAAqB,CAAC,CAAC;YAE1F,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CACvB,CAAC,GAAc,EAAU,EAAE,CAAC,CAAC;gBAC3B,EAAE,EAAE,GAAG,CAAC,EAAE;gBACV,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,WAAW,EAAE,GAAG,CAAC,WAAW;gBAC5B,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO;gBACtB,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ;gBACxB,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,kBAAkB,GAAG,IAAI,CAAC;gBAClD,SAAS,EACP,GAAG,CAAC,kBAAkB,IAAI,GAAG,CAAC,sBAAsB,GAAG,CAAC,CAAC;oBACvD,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,kBAAkB,GAAG,IAAI,GAAG,GAAG,CAAC,sBAAsB,GAAG,IAAI,CAAC;oBAC7E,CAAC,CAAC,IAAI;aACX,CAAC,CACH,CAAC;QACJ,CAAC;KAAA;IAED;;;;;OAKG;IACG,YAAY,CAAC,SAAmB,EAAE,cAAuB;;YAC7D,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,0BAA0B,EAAE;gBACtD,MAAM,EAAE,SAAS;gBACjB,cAAc;aACf,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;;;;;;;;OASG;IACG,QAAQ,CAAC,QAAgB,EAAE,MAAc;;YAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,QAAS,EAAE,QAAQ,CAAC,CAAC;YACvE,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC;YACrC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YACjD,MAAM,OAAO,GAAG;gBACd,aAAa,EAAE,aAAa;gBAC5B,MAAM,EAAE,IAAA,mBAAU,EAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE;aACjD,CAAC;YACF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,UAAU,kCAAO,OAAO,KAAE,KAAK,IAAG,CAAC;YAC7F,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,4BAA4B,kCACnD,OAAO,KACV,SAAS,EAAE,SAAS,IACpB,CAAC;QACL,CAAC;KAAA;IAED;;;;;;;;;OASG;IACG,OAAO,CAAC,QAAgB,EAAE,MAAc;;YAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,QAAS,EAAE,QAAQ,CAAC,CAAC;YACvE,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC;YACrC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YACjD,MAAM,OAAO,GAAG;gBACd,aAAa;gBACb,MAAM,EAAE,IAAA,mBAAU,EAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE;aACjD,CAAC;YACF,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAC1C,kCAAkC,EAClC,OAAO,CACR,CAAC;YACF,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;YAClC,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACpF,MAAM,eAAe,GAAG,kBAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAClD,MAAM,cAAc,mCACf,OAAO,KACV,QAAQ,EACR,CAAC,EAAE,eAAe,CAAC,CAAC,EACpB,CAAC,EAAE,eAAe,CAAC,CAAC,EACpB,CAAC,EAAE,eAAe,CAAC,CAAC,GACrB,CAAC;YACF,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,SAAS,kCACrE,cAAc,KACjB,KAAK,IACL,CAAC;YACH,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,kCAClD,cAAc,KACjB,SAAS,EAAE,gBAAgB,IAC3B,CAAC;QACL,CAAC;KAAA;CACF;AAED,kBAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Account/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { TokenType } from '../types/token';
1
2
  export interface Nonce {
2
3
  nonce: string;
3
4
  }
@@ -23,11 +24,19 @@ export interface BalanceData {
23
24
  credit: string;
24
25
  debit: string;
25
26
  net: string;
27
+ /**
28
+ * Unclaimed worker earnings amount
29
+ * @experimental Socket messages do not provide this field yet, so it may not be available in all cases.
30
+ */
31
+ unclaimed?: string;
26
32
  }
33
+ export type Balances = Record<TokenType, BalanceData>;
34
+ export type FullBalances = Record<TokenType, Required<BalanceData>>;
27
35
  export interface TxHistoryParams {
28
36
  status: 'completed';
29
37
  address: string;
30
38
  limit: number;
39
+ provider?: string;
31
40
  offset?: number;
32
41
  }
33
42
  export interface TxHistoryData {
@@ -51,6 +60,7 @@ export interface TxRaw {
51
60
  sourceSID: string;
52
61
  endTime: number;
53
62
  type: 'debit' | string;
63
+ tokenType: TokenType;
54
64
  }
55
65
  export interface TxHistoryEntry {
56
66
  id: string;
@@ -60,6 +70,7 @@ export interface TxHistoryEntry {
60
70
  status: 'completed';
61
71
  role: 'artist' | 'worker';
62
72
  amount: number;
73
+ tokenType: TokenType;
63
74
  description: string;
64
75
  source: 'project' | string;
65
76
  endTime: Date;
@@ -72,19 +83,29 @@ export interface RewardRaw {
72
83
  title: string;
73
84
  description: string;
74
85
  amount: string;
86
+ tokenType: TokenType;
75
87
  claimed: number;
76
88
  canClaim: number;
77
89
  lastClaimTimestamp: number;
78
90
  claimResetFrequencySec: number;
79
91
  }
92
+ export interface RewardsQuery {
93
+ provider?: string;
94
+ }
80
95
  export interface Reward {
81
96
  id: string;
82
97
  type: RewardType;
83
98
  title: string;
84
99
  description: string;
85
100
  amount: string;
101
+ tokenType: TokenType;
86
102
  claimed: boolean;
87
103
  canClaim: boolean;
88
104
  lastClaim: Date;
89
105
  nextClaim: Date | null;
106
+ provider?: string;
107
+ }
108
+ export interface ClaimOptions {
109
+ turnstileToken?: string;
110
+ provider?: string;
90
111
  }
@@ -1,10 +1,35 @@
1
1
  import { SupernetType } from './types';
2
- export type BalanceData = {
3
- settled: string;
4
- credit: string;
5
- debit: string;
6
- net: string;
7
- };
2
+ import { Balances } from '../../Account/types';
3
+ export interface AuthenticatedData {
4
+ id: string;
5
+ clientType: 'artist' | 'worker';
6
+ username: string;
7
+ address: string;
8
+ SID: number;
9
+ clientSID: number;
10
+ addressSID: number;
11
+ balanceVersion: 2;
12
+ tokens: {
13
+ sogni: {
14
+ settled: string;
15
+ credit: string;
16
+ debit: string;
17
+ net: string;
18
+ };
19
+ spark: {
20
+ settled: string;
21
+ credit: string;
22
+ debit: string;
23
+ net: string;
24
+ };
25
+ };
26
+ activeProjects: [];
27
+ unclaimedCompletedProjects: [];
28
+ isMainnet: boolean;
29
+ accountWasMigrated: boolean;
30
+ hasUnclaimedAirdrop: boolean;
31
+ firstLoginAfterMigration: boolean;
32
+ }
8
33
  export type JobErrorData = {
9
34
  jobID: string;
10
35
  imgID?: string;
@@ -32,6 +57,9 @@ export type JobStateData = {
32
57
  jobID: string;
33
58
  imgID: string;
34
59
  workerName: string;
60
+ positivePrompt?: string;
61
+ negativePrompt?: string;
62
+ jobIndex?: number;
35
63
  } | {
36
64
  jobID: string;
37
65
  type: 'queued';
@@ -47,11 +75,26 @@ export type ServerDisconnectData = {
47
75
  code: number;
48
76
  reason: string;
49
77
  };
78
+ export type ToastMessage = {
79
+ type: 'info' | 'success' | 'warning' | 'error';
80
+ message: string;
81
+ autoClose: number;
82
+ stickyID: string;
83
+ };
84
+ export type ArtistCancelConfirmation = {
85
+ didCancel: boolean;
86
+ error_message: string;
87
+ jobID: string;
88
+ };
50
89
  export type SocketEventMap = {
90
+ /**
91
+ * @event WebSocketClient#authenticated - Received after successful connection to the WebSocket server
92
+ */
93
+ authenticated: AuthenticatedData;
51
94
  /**
52
95
  * @event WebSocketClient#balanceUpdate - Received balance update
53
96
  */
54
- balanceUpdate: BalanceData;
97
+ balanceUpdate: Balances;
55
98
  /**
56
99
  * @event WebSocketClient#changeNetwork - Default network changed
57
100
  */
@@ -86,4 +129,9 @@ export type SocketEventMap = {
86
129
  * @event WebSocketClient#disconnected - WebSocket connection was closed
87
130
  */
88
131
  disconnected: ServerDisconnectData;
132
+ /**
133
+ * @event WebSocketClient#toastMessage - Toast message received
134
+ */
135
+ toastMessage: ToastMessage;
136
+ artistCancelConfirmation: ArtistCancelConfirmation;
89
137
  };
@@ -17,7 +17,7 @@ const isomorphic_ws_1 = __importDefault(require("isomorphic-ws"));
17
17
  const base64_1 = require("../../lib/base64");
18
18
  const isNodejs_1 = __importDefault(require("../../lib/isNodejs"));
19
19
  const version_1 = require("../../version");
20
- const PROTOCOL_VERSION = '0.4.3';
20
+ const PROTOCOL_VERSION = '3.0.0';
21
21
  const PING_INTERVAL = 15000;
22
22
  class WebSocketClient extends RestClient_1.default {
23
23
  constructor(baseUrl, auth, appId, supernetType, logger) {
@@ -7,7 +7,7 @@ import { JSONValue } from '../types/json';
7
7
  import { SupernetType } from './WebSocketClient/types';
8
8
  import { Logger } from '../lib/DefaultLogger';
9
9
  import AuthManager, { Tokens } from '../lib/AuthManager';
10
- export interface ApiReponse<D = JSONValue> {
10
+ export interface ApiResponse<D = JSONValue> {
11
11
  status: 'success';
12
12
  data: D;
13
13
  }
@@ -29,11 +29,13 @@ declare class ApiClient extends TypedEventEmitter<ApiClientEvents> {
29
29
  private _socket;
30
30
  private _auth;
31
31
  private _reconnectAttempts;
32
- constructor(baseUrl: string, socketUrl: string, appId: string, networkType: SupernetType, logger: Logger);
32
+ private _disableSocket;
33
+ constructor(baseUrl: string, socketUrl: string, appId: string, networkType: SupernetType, logger: Logger, disableSocket?: boolean);
33
34
  get isAuthenticated(): boolean;
34
35
  get auth(): AuthManager;
35
36
  get socket(): WebSocketClient;
36
37
  get rest(): RestClient;
38
+ get socketEnabled(): boolean;
37
39
  authenticate(tokens: Tokens): Promise<void>;
38
40
  removeAuth(): void;
39
41
  handleSocketConnect({ network }: ServerConnectData): void;
@@ -28,14 +28,16 @@ class ApiError extends Error {
28
28
  }
29
29
  exports.ApiError = ApiError;
30
30
  class ApiClient extends TypedEventEmitter_1.default {
31
- constructor(baseUrl, socketUrl, appId, networkType, logger) {
31
+ constructor(baseUrl, socketUrl, appId, networkType, logger, disableSocket = false) {
32
32
  super();
33
33
  this._reconnectAttempts = WS_RECONNECT_ATTEMPTS;
34
+ this._disableSocket = false;
34
35
  this.appId = appId;
35
36
  this.logger = logger;
36
37
  this._auth = new AuthManager_1.default(baseUrl, logger);
37
38
  this._rest = new RestClient_1.default(baseUrl, this._auth, logger);
38
39
  this._socket = new WebSocketClient_1.default(socketUrl, this._auth, appId, networkType, logger);
40
+ this._disableSocket = disableSocket;
39
41
  this._auth.on('refreshFailed', this.handleRefreshFailed.bind(this));
40
42
  this._socket.on('connected', this.handleSocketConnect.bind(this));
41
43
  this._socket.on('disconnected', this.handleSocketDisconnect.bind(this));
@@ -52,15 +54,22 @@ class ApiClient extends TypedEventEmitter_1.default {
52
54
  get rest() {
53
55
  return this._rest;
54
56
  }
57
+ get socketEnabled() {
58
+ return !this._disableSocket;
59
+ }
55
60
  authenticate(tokens) {
56
61
  return __awaiter(this, void 0, void 0, function* () {
57
62
  yield this.auth.setTokens(tokens);
58
- yield this.socket.connect();
63
+ if (!this._disableSocket) {
64
+ yield this.socket.connect();
65
+ }
59
66
  });
60
67
  }
61
68
  removeAuth() {
62
69
  this.auth.clear();
63
- this.socket.disconnect();
70
+ if (this.socket.isConnected) {
71
+ this.socket.disconnect();
72
+ }
64
73
  }
65
74
  handleSocketConnect({ network }) {
66
75
  this._reconnectAttempts = WS_RECONNECT_ATTEMPTS;