@imtbl/sdk 1.13.2 → 1.13.3

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 (36) hide show
  1. package/dist/blockchain_data.js +2 -2
  2. package/dist/browser/checkout/{BridgeWidget-fad5e5b4.js → BridgeWidget-feb6e244.js} +1 -1
  3. package/dist/browser/checkout/{OnRampWidget-cd752140.js → OnRampWidget-bf7b0285.js} +1 -1
  4. package/dist/browser/checkout/SaleWidget-8bbac84d.js +2 -0
  5. package/dist/browser/checkout/{SpendingCapHero-8f336477.js → SpendingCapHero-cc97026e.js} +1 -1
  6. package/dist/browser/checkout/{SwapWidget-9004a303.js → SwapWidget-411d726b.js} +1 -1
  7. package/dist/browser/checkout/{TopUpView-24b7522e.js → TopUpView-62c3bb1c.js} +1 -1
  8. package/dist/browser/checkout/{WalletWidget-d04f02c7.js → WalletWidget-da4cd5a6.js} +1 -1
  9. package/dist/browser/checkout/{auto-track-a76b6dc5.js → auto-track-42ec91ae.js} +1 -1
  10. package/dist/browser/checkout/{balance-b06cb17f.js → balance-0e3acb15.js} +1 -1
  11. package/dist/browser/checkout/{index-52729a66.js → index-0face9fc.js} +1 -1
  12. package/dist/browser/checkout/{index-a5ec4ed9.js → index-1383cc81.js} +2 -2
  13. package/dist/browser/checkout/{index-1380b155.js → index-2a04a2f2.js} +1 -1
  14. package/dist/browser/checkout/{index-3549d306.js → index-4ceb8896.js} +1 -1
  15. package/dist/browser/checkout/index-4eeff6a1.js +1 -0
  16. package/dist/browser/checkout/{index-6e473dc6.js → index-6b30a04c.js} +1 -1
  17. package/dist/browser/checkout/{index-10a2ce7f.js → index-912bd43f.js} +1 -1
  18. package/dist/browser/checkout/{index-33ba2d41.js → index-a4e5665c.js} +1 -1
  19. package/dist/browser/checkout/{index.umd-17c2e990.js → index.umd-22e11686.js} +1 -1
  20. package/dist/browser/checkout/{retry-154c5f2b.js → retry-4271fac2.js} +1 -1
  21. package/dist/browser/checkout/sdk.js +4 -4
  22. package/dist/browser/checkout/{useTransakEvents-05f3e770.js → useTransakEvents-4f11a227.js} +1 -1
  23. package/dist/browser/checkout/widgets-esm.js +1 -1
  24. package/dist/browser/checkout/widgets.js +5 -5
  25. package/dist/checkout.js +4 -4
  26. package/dist/config.js +1 -1
  27. package/dist/index.browser.js +4 -4
  28. package/dist/index.browser.js.map +1 -1
  29. package/dist/index.cjs +43 -31
  30. package/dist/index.js +43 -31
  31. package/dist/orderbook.js +1 -1
  32. package/dist/passport.js +40 -28
  33. package/dist/x.js +2 -2
  34. package/package.json +1 -1
  35. package/dist/browser/checkout/SaleWidget-d346df01.js +0 -2
  36. package/dist/browser/checkout/index-5202f725.js +0 -1
package/dist/index.cjs CHANGED
@@ -174,7 +174,7 @@ const flattenProperties$1 = (properties) => {
174
174
  };
175
175
 
176
176
  // WARNING: DO NOT CHANGE THE STRING BELOW. IT GETS REPLACED AT BUILD TIME.
177
- const SDK_VERSION$1 = '1.13.2';
177
+ const SDK_VERSION$1 = '1.13.3';
178
178
  const getReferrer$1 = () => {
179
179
  if (isNode$1()) {
180
180
  return '';
@@ -11550,7 +11550,7 @@ class MultiRollupApiClients {
11550
11550
  }
11551
11551
 
11552
11552
  // eslint-disable-next-line @typescript-eslint/naming-convention
11553
- const defaultHeaders$1 = { 'x-sdk-version': 'ts-immutable-sdk-1.13.2' };
11553
+ const defaultHeaders$1 = { 'x-sdk-version': 'ts-immutable-sdk-1.13.3' };
11554
11554
  const createConfig = ({ basePath, headers, }) => {
11555
11555
  if (!basePath.trim()) {
11556
11556
  throw Error('basePath can not be empty');
@@ -11622,7 +11622,7 @@ class APIError extends Error {
11622
11622
 
11623
11623
  /* eslint-disable implicit-arrow-linebreak */
11624
11624
  const defaultHeaders = {
11625
- sdkVersion: 'ts-immutable-sdk-multi-rollup-api-client-1.13.2',
11625
+ sdkVersion: 'ts-immutable-sdk-multi-rollup-api-client-1.13.3',
11626
11626
  };
11627
11627
  /**
11628
11628
  * createAPIConfiguration to create a custom Configuration
@@ -12105,7 +12105,7 @@ const createImmutableXConfiguration = ({ basePath, chainID, coreContractAddress,
12105
12105
  chainID,
12106
12106
  coreContractAddress,
12107
12107
  registrationContractAddress,
12108
- sdkVersion: 'ts-immutable-sdk-1.13.2',
12108
+ sdkVersion: 'ts-immutable-sdk-1.13.3',
12109
12109
  });
12110
12110
  /**
12111
12111
  * Sets `sdkVersion` at the time of build
@@ -17529,7 +17529,7 @@ async function registerOffchain$1(userAdminKeySigner, starkSigner, unregisteredU
17529
17529
  return response;
17530
17530
  }
17531
17531
  catch (err) {
17532
- if (globalAxios$1.isAxiosError(err) && err.status === 409) {
17532
+ if (globalAxios$1.isAxiosError(err) && err.response?.status === 409) {
17533
17533
  // The user already registered, but the user token is not updated yet.
17534
17534
  await forceUserRefresh(authManager);
17535
17535
  return { tx_hash: '' };
@@ -17548,8 +17548,8 @@ class PassportImxProvider {
17548
17548
  /**
17549
17549
  * This property is set during initialisation and stores the signers in a promise.
17550
17550
  * This property is not meant to be accessed directly, but through the
17551
- * `getAuthenticatedUserAndSigners` method.
17552
- * @see getAuthenticatedUserAndSigners
17551
+ * `#getSigners` method.
17552
+ * @see #getSigners
17553
17553
  */
17554
17554
  signers;
17555
17555
  signerInitialisationError;
@@ -17559,7 +17559,7 @@ class PassportImxProvider {
17559
17559
  this.magicAdapter = magicAdapter;
17560
17560
  this.imxApiClients = imxApiClients;
17561
17561
  this.guardianClient = guardianClient;
17562
- this.initialiseSigners();
17562
+ this.#initialiseSigners();
17563
17563
  passportEventEmitter.on(PassportEvents.LOGGED_OUT, this.handleLogout);
17564
17564
  }
17565
17565
  handleLogout = () => {
@@ -17574,10 +17574,10 @@ class PassportImxProvider {
17574
17574
  * so that it doesn't result in an unhandled promise rejection.
17575
17575
  *
17576
17576
  * This error is thrown when the signers are requested through:
17577
- * @see getAuthenticatedUserAndSigners
17577
+ * @see #getSigners
17578
17578
  *
17579
17579
  */
17580
- initialiseSigners() {
17580
+ #initialiseSigners() {
17581
17581
  const generateSigners = async () => {
17582
17582
  const user = await this.authManager.getUser();
17583
17583
  // The user will be present because the factory validates it
@@ -17599,11 +17599,14 @@ class PassportImxProvider {
17599
17599
  }
17600
17600
  });
17601
17601
  }
17602
- async getAuthenticatedUserAndSigners() {
17602
+ async #getAuthenticatedUser() {
17603
17603
  const user = await this.authManager.getUser();
17604
17604
  if (!user || !this.signers) {
17605
17605
  throw new PassportError('User has been logged out', PassportErrorType.NOT_LOGGED_IN_ERROR);
17606
17606
  }
17607
+ return user;
17608
+ }
17609
+ async #getSigners() {
17607
17610
  const signers = await this.signers;
17608
17611
  // Throw the stored error if the signers failed to initialise
17609
17612
  if (typeof signers === 'undefined') {
@@ -17612,17 +17615,24 @@ class PassportImxProvider {
17612
17615
  }
17613
17616
  throw new Error('Signers failed to initialise');
17614
17617
  }
17615
- return { user, ...signers };
17618
+ return signers;
17616
17619
  }
17617
- async getRegisteredImxUserAndSigners() {
17618
- const { user, starkSigner, ethSigner } = await this.getAuthenticatedUserAndSigners();
17620
+ async #getRegisteredImxUserAndSigners() {
17621
+ const [user, signers] = await Promise.all([
17622
+ this.#getAuthenticatedUser(),
17623
+ this.#getSigners(),
17624
+ ]);
17619
17625
  if (!isUserImx(user)) {
17620
17626
  throw new PassportError('User has not been registered with StarkEx', PassportErrorType.USER_NOT_REGISTERED_ERROR);
17621
17627
  }
17622
- return { user, starkSigner, ethSigner };
17628
+ return {
17629
+ user,
17630
+ starkSigner: signers.starkSigner,
17631
+ ethSigner: signers.ethSigner,
17632
+ };
17623
17633
  }
17624
17634
  async transfer(request) {
17625
- const { user, starkSigner } = await this.getRegisteredImxUserAndSigners();
17635
+ const { user, starkSigner } = await this.#getRegisteredImxUserAndSigners();
17626
17636
  return transfer$1({
17627
17637
  request,
17628
17638
  user,
@@ -17632,20 +17642,22 @@ class PassportImxProvider {
17632
17642
  });
17633
17643
  }
17634
17644
  async registerOffchain() {
17635
- const { user, ethSigner, starkSigner } = await this.getAuthenticatedUserAndSigners();
17636
- return await registerOffchain$1(ethSigner, starkSigner, user, this.authManager, this.imxApiClients);
17645
+ const [user, signers] = await Promise.all([
17646
+ this.#getAuthenticatedUser(),
17647
+ this.#getSigners(),
17648
+ ]);
17649
+ return await registerOffchain$1(signers.ethSigner, signers.starkSigner, user, this.authManager, this.imxApiClients);
17637
17650
  }
17638
17651
  async isRegisteredOffchain() {
17639
- const { user } = await this.getAuthenticatedUserAndSigners();
17652
+ const user = await this.#getAuthenticatedUser();
17640
17653
  return !!user.imx;
17641
17654
  }
17642
- // TODO: Remove once implemented
17643
17655
  // eslint-disable-next-line class-methods-use-this, @typescript-eslint/no-unused-vars
17644
17656
  isRegisteredOnchain() {
17645
17657
  throw new PassportError('Operation not supported', PassportErrorType.OPERATION_NOT_SUPPORTED_ERROR);
17646
17658
  }
17647
17659
  async createOrder(request) {
17648
- const { user, starkSigner } = await this.getRegisteredImxUserAndSigners();
17660
+ const { user, starkSigner } = await this.#getRegisteredImxUserAndSigners();
17649
17661
  return createOrder$1({
17650
17662
  request,
17651
17663
  user,
@@ -17655,7 +17667,7 @@ class PassportImxProvider {
17655
17667
  });
17656
17668
  }
17657
17669
  async cancelOrder(request) {
17658
- const { user, starkSigner } = await this.getRegisteredImxUserAndSigners();
17670
+ const { user, starkSigner } = await this.#getRegisteredImxUserAndSigners();
17659
17671
  return cancelOrder$1({
17660
17672
  request,
17661
17673
  user,
@@ -17665,7 +17677,7 @@ class PassportImxProvider {
17665
17677
  });
17666
17678
  }
17667
17679
  async createTrade(request) {
17668
- const { user, starkSigner } = await this.getRegisteredImxUserAndSigners();
17680
+ const { user, starkSigner } = await this.#getRegisteredImxUserAndSigners();
17669
17681
  return createTrade$1({
17670
17682
  request,
17671
17683
  user,
@@ -17675,7 +17687,7 @@ class PassportImxProvider {
17675
17687
  });
17676
17688
  }
17677
17689
  async batchNftTransfer(request) {
17678
- const { user, starkSigner } = await this.getRegisteredImxUserAndSigners();
17690
+ const { user, starkSigner } = await this.#getRegisteredImxUserAndSigners();
17679
17691
  return batchNftTransfer({
17680
17692
  request,
17681
17693
  user,
@@ -17685,7 +17697,7 @@ class PassportImxProvider {
17685
17697
  });
17686
17698
  }
17687
17699
  async exchangeTransfer(request) {
17688
- const { user, starkSigner } = await this.getRegisteredImxUserAndSigners();
17700
+ const { user, starkSigner } = await this.#getRegisteredImxUserAndSigners();
17689
17701
  return exchangeTransfer$1({
17690
17702
  request,
17691
17703
  user,
@@ -17693,17 +17705,14 @@ class PassportImxProvider {
17693
17705
  exchangesApi: this.immutableXClient.exchangeApi,
17694
17706
  });
17695
17707
  }
17696
- // TODO: Remove once implemented
17697
17708
  // eslint-disable-next-line class-methods-use-this, @typescript-eslint/no-unused-vars
17698
17709
  deposit(deposit) {
17699
17710
  throw new PassportError('Operation not supported', PassportErrorType.OPERATION_NOT_SUPPORTED_ERROR);
17700
17711
  }
17701
- // TODO: Remove once implemented
17702
17712
  // eslint-disable-next-line class-methods-use-this, @typescript-eslint/no-unused-vars
17703
17713
  prepareWithdrawal(request) {
17704
17714
  throw new PassportError('Operation not supported', PassportErrorType.OPERATION_NOT_SUPPORTED_ERROR);
17705
17715
  }
17706
- // TODO: Remove once implemented
17707
17716
  // eslint-disable-next-line class-methods-use-this
17708
17717
  completeWithdrawal(
17709
17718
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
@@ -17713,7 +17722,10 @@ class PassportImxProvider {
17713
17722
  throw new PassportError('Operation not supported', PassportErrorType.OPERATION_NOT_SUPPORTED_ERROR);
17714
17723
  }
17715
17724
  async getAddress() {
17716
- const { user } = await this.getRegisteredImxUserAndSigners();
17725
+ const user = await this.#getAuthenticatedUser();
17726
+ if (!isUserImx(user)) {
17727
+ throw new PassportError('User has not been registered with StarkEx', PassportErrorType.USER_NOT_REGISTERED_ERROR);
17728
+ }
17717
17729
  return Promise.resolve(user.imx.ethAddress);
17718
17730
  }
17719
17731
  }
@@ -37855,7 +37867,7 @@ const flattenProperties = (properties) => {
37855
37867
  };
37856
37868
 
37857
37869
  // WARNING: DO NOT CHANGE THE STRING BELOW. IT GETS REPLACED AT BUILD TIME.
37858
- const SDK_VERSION = '1.13.2';
37870
+ const SDK_VERSION = '1.13.3';
37859
37871
  const getReferrer = () => {
37860
37872
  if (isNode()) {
37861
37873
  return '';
@@ -43031,7 +43043,7 @@ const IMMUTABLE_ZKVEM_GAS_OVERRIDES = {
43031
43043
  maxPriorityFeePerGas: ethers.BigNumber.from(10e9),
43032
43044
  };
43033
43045
 
43034
- const SDK_VERSION_MARKER = '1.13.2';
43046
+ const SDK_VERSION_MARKER = '1.13.3';
43035
43047
  // This SDK version is replaced by the `yarn build` command ran on the root level
43036
43048
  const globalPackageVersion = () => SDK_VERSION_MARKER;
43037
43049
 
package/dist/index.js CHANGED
@@ -152,7 +152,7 @@ const flattenProperties$1 = (properties) => {
152
152
  };
153
153
 
154
154
  // WARNING: DO NOT CHANGE THE STRING BELOW. IT GETS REPLACED AT BUILD TIME.
155
- const SDK_VERSION$1 = '1.13.2';
155
+ const SDK_VERSION$1 = '1.13.3';
156
156
  const getReferrer$1 = () => {
157
157
  if (isNode$1()) {
158
158
  return '';
@@ -11528,7 +11528,7 @@ class MultiRollupApiClients {
11528
11528
  }
11529
11529
 
11530
11530
  // eslint-disable-next-line @typescript-eslint/naming-convention
11531
- const defaultHeaders$1 = { 'x-sdk-version': 'ts-immutable-sdk-1.13.2' };
11531
+ const defaultHeaders$1 = { 'x-sdk-version': 'ts-immutable-sdk-1.13.3' };
11532
11532
  const createConfig = ({ basePath, headers, }) => {
11533
11533
  if (!basePath.trim()) {
11534
11534
  throw Error('basePath can not be empty');
@@ -11600,7 +11600,7 @@ class APIError extends Error {
11600
11600
 
11601
11601
  /* eslint-disable implicit-arrow-linebreak */
11602
11602
  const defaultHeaders = {
11603
- sdkVersion: 'ts-immutable-sdk-multi-rollup-api-client-1.13.2',
11603
+ sdkVersion: 'ts-immutable-sdk-multi-rollup-api-client-1.13.3',
11604
11604
  };
11605
11605
  /**
11606
11606
  * createAPIConfiguration to create a custom Configuration
@@ -12083,7 +12083,7 @@ const createImmutableXConfiguration = ({ basePath, chainID, coreContractAddress,
12083
12083
  chainID,
12084
12084
  coreContractAddress,
12085
12085
  registrationContractAddress,
12086
- sdkVersion: 'ts-immutable-sdk-1.13.2',
12086
+ sdkVersion: 'ts-immutable-sdk-1.13.3',
12087
12087
  });
12088
12088
  /**
12089
12089
  * Sets `sdkVersion` at the time of build
@@ -17507,7 +17507,7 @@ async function registerOffchain$1(userAdminKeySigner, starkSigner, unregisteredU
17507
17507
  return response;
17508
17508
  }
17509
17509
  catch (err) {
17510
- if (globalAxios$1.isAxiosError(err) && err.status === 409) {
17510
+ if (globalAxios$1.isAxiosError(err) && err.response?.status === 409) {
17511
17511
  // The user already registered, but the user token is not updated yet.
17512
17512
  await forceUserRefresh(authManager);
17513
17513
  return { tx_hash: '' };
@@ -17526,8 +17526,8 @@ class PassportImxProvider {
17526
17526
  /**
17527
17527
  * This property is set during initialisation and stores the signers in a promise.
17528
17528
  * This property is not meant to be accessed directly, but through the
17529
- * `getAuthenticatedUserAndSigners` method.
17530
- * @see getAuthenticatedUserAndSigners
17529
+ * `#getSigners` method.
17530
+ * @see #getSigners
17531
17531
  */
17532
17532
  signers;
17533
17533
  signerInitialisationError;
@@ -17537,7 +17537,7 @@ class PassportImxProvider {
17537
17537
  this.magicAdapter = magicAdapter;
17538
17538
  this.imxApiClients = imxApiClients;
17539
17539
  this.guardianClient = guardianClient;
17540
- this.initialiseSigners();
17540
+ this.#initialiseSigners();
17541
17541
  passportEventEmitter.on(PassportEvents.LOGGED_OUT, this.handleLogout);
17542
17542
  }
17543
17543
  handleLogout = () => {
@@ -17552,10 +17552,10 @@ class PassportImxProvider {
17552
17552
  * so that it doesn't result in an unhandled promise rejection.
17553
17553
  *
17554
17554
  * This error is thrown when the signers are requested through:
17555
- * @see getAuthenticatedUserAndSigners
17555
+ * @see #getSigners
17556
17556
  *
17557
17557
  */
17558
- initialiseSigners() {
17558
+ #initialiseSigners() {
17559
17559
  const generateSigners = async () => {
17560
17560
  const user = await this.authManager.getUser();
17561
17561
  // The user will be present because the factory validates it
@@ -17577,11 +17577,14 @@ class PassportImxProvider {
17577
17577
  }
17578
17578
  });
17579
17579
  }
17580
- async getAuthenticatedUserAndSigners() {
17580
+ async #getAuthenticatedUser() {
17581
17581
  const user = await this.authManager.getUser();
17582
17582
  if (!user || !this.signers) {
17583
17583
  throw new PassportError('User has been logged out', PassportErrorType.NOT_LOGGED_IN_ERROR);
17584
17584
  }
17585
+ return user;
17586
+ }
17587
+ async #getSigners() {
17585
17588
  const signers = await this.signers;
17586
17589
  // Throw the stored error if the signers failed to initialise
17587
17590
  if (typeof signers === 'undefined') {
@@ -17590,17 +17593,24 @@ class PassportImxProvider {
17590
17593
  }
17591
17594
  throw new Error('Signers failed to initialise');
17592
17595
  }
17593
- return { user, ...signers };
17596
+ return signers;
17594
17597
  }
17595
- async getRegisteredImxUserAndSigners() {
17596
- const { user, starkSigner, ethSigner } = await this.getAuthenticatedUserAndSigners();
17598
+ async #getRegisteredImxUserAndSigners() {
17599
+ const [user, signers] = await Promise.all([
17600
+ this.#getAuthenticatedUser(),
17601
+ this.#getSigners(),
17602
+ ]);
17597
17603
  if (!isUserImx(user)) {
17598
17604
  throw new PassportError('User has not been registered with StarkEx', PassportErrorType.USER_NOT_REGISTERED_ERROR);
17599
17605
  }
17600
- return { user, starkSigner, ethSigner };
17606
+ return {
17607
+ user,
17608
+ starkSigner: signers.starkSigner,
17609
+ ethSigner: signers.ethSigner,
17610
+ };
17601
17611
  }
17602
17612
  async transfer(request) {
17603
- const { user, starkSigner } = await this.getRegisteredImxUserAndSigners();
17613
+ const { user, starkSigner } = await this.#getRegisteredImxUserAndSigners();
17604
17614
  return transfer$1({
17605
17615
  request,
17606
17616
  user,
@@ -17610,20 +17620,22 @@ class PassportImxProvider {
17610
17620
  });
17611
17621
  }
17612
17622
  async registerOffchain() {
17613
- const { user, ethSigner, starkSigner } = await this.getAuthenticatedUserAndSigners();
17614
- return await registerOffchain$1(ethSigner, starkSigner, user, this.authManager, this.imxApiClients);
17623
+ const [user, signers] = await Promise.all([
17624
+ this.#getAuthenticatedUser(),
17625
+ this.#getSigners(),
17626
+ ]);
17627
+ return await registerOffchain$1(signers.ethSigner, signers.starkSigner, user, this.authManager, this.imxApiClients);
17615
17628
  }
17616
17629
  async isRegisteredOffchain() {
17617
- const { user } = await this.getAuthenticatedUserAndSigners();
17630
+ const user = await this.#getAuthenticatedUser();
17618
17631
  return !!user.imx;
17619
17632
  }
17620
- // TODO: Remove once implemented
17621
17633
  // eslint-disable-next-line class-methods-use-this, @typescript-eslint/no-unused-vars
17622
17634
  isRegisteredOnchain() {
17623
17635
  throw new PassportError('Operation not supported', PassportErrorType.OPERATION_NOT_SUPPORTED_ERROR);
17624
17636
  }
17625
17637
  async createOrder(request) {
17626
- const { user, starkSigner } = await this.getRegisteredImxUserAndSigners();
17638
+ const { user, starkSigner } = await this.#getRegisteredImxUserAndSigners();
17627
17639
  return createOrder$1({
17628
17640
  request,
17629
17641
  user,
@@ -17633,7 +17645,7 @@ class PassportImxProvider {
17633
17645
  });
17634
17646
  }
17635
17647
  async cancelOrder(request) {
17636
- const { user, starkSigner } = await this.getRegisteredImxUserAndSigners();
17648
+ const { user, starkSigner } = await this.#getRegisteredImxUserAndSigners();
17637
17649
  return cancelOrder$1({
17638
17650
  request,
17639
17651
  user,
@@ -17643,7 +17655,7 @@ class PassportImxProvider {
17643
17655
  });
17644
17656
  }
17645
17657
  async createTrade(request) {
17646
- const { user, starkSigner } = await this.getRegisteredImxUserAndSigners();
17658
+ const { user, starkSigner } = await this.#getRegisteredImxUserAndSigners();
17647
17659
  return createTrade$1({
17648
17660
  request,
17649
17661
  user,
@@ -17653,7 +17665,7 @@ class PassportImxProvider {
17653
17665
  });
17654
17666
  }
17655
17667
  async batchNftTransfer(request) {
17656
- const { user, starkSigner } = await this.getRegisteredImxUserAndSigners();
17668
+ const { user, starkSigner } = await this.#getRegisteredImxUserAndSigners();
17657
17669
  return batchNftTransfer({
17658
17670
  request,
17659
17671
  user,
@@ -17663,7 +17675,7 @@ class PassportImxProvider {
17663
17675
  });
17664
17676
  }
17665
17677
  async exchangeTransfer(request) {
17666
- const { user, starkSigner } = await this.getRegisteredImxUserAndSigners();
17678
+ const { user, starkSigner } = await this.#getRegisteredImxUserAndSigners();
17667
17679
  return exchangeTransfer$1({
17668
17680
  request,
17669
17681
  user,
@@ -17671,17 +17683,14 @@ class PassportImxProvider {
17671
17683
  exchangesApi: this.immutableXClient.exchangeApi,
17672
17684
  });
17673
17685
  }
17674
- // TODO: Remove once implemented
17675
17686
  // eslint-disable-next-line class-methods-use-this, @typescript-eslint/no-unused-vars
17676
17687
  deposit(deposit) {
17677
17688
  throw new PassportError('Operation not supported', PassportErrorType.OPERATION_NOT_SUPPORTED_ERROR);
17678
17689
  }
17679
- // TODO: Remove once implemented
17680
17690
  // eslint-disable-next-line class-methods-use-this, @typescript-eslint/no-unused-vars
17681
17691
  prepareWithdrawal(request) {
17682
17692
  throw new PassportError('Operation not supported', PassportErrorType.OPERATION_NOT_SUPPORTED_ERROR);
17683
17693
  }
17684
- // TODO: Remove once implemented
17685
17694
  // eslint-disable-next-line class-methods-use-this
17686
17695
  completeWithdrawal(
17687
17696
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
@@ -17691,7 +17700,10 @@ class PassportImxProvider {
17691
17700
  throw new PassportError('Operation not supported', PassportErrorType.OPERATION_NOT_SUPPORTED_ERROR);
17692
17701
  }
17693
17702
  async getAddress() {
17694
- const { user } = await this.getRegisteredImxUserAndSigners();
17703
+ const user = await this.#getAuthenticatedUser();
17704
+ if (!isUserImx(user)) {
17705
+ throw new PassportError('User has not been registered with StarkEx', PassportErrorType.USER_NOT_REGISTERED_ERROR);
17706
+ }
17695
17707
  return Promise.resolve(user.imx.ethAddress);
17696
17708
  }
17697
17709
  }
@@ -37833,7 +37845,7 @@ const flattenProperties = (properties) => {
37833
37845
  };
37834
37846
 
37835
37847
  // WARNING: DO NOT CHANGE THE STRING BELOW. IT GETS REPLACED AT BUILD TIME.
37836
- const SDK_VERSION = '1.13.2';
37848
+ const SDK_VERSION = '1.13.3';
37837
37849
  const getReferrer = () => {
37838
37850
  if (isNode()) {
37839
37851
  return '';
@@ -43009,7 +43021,7 @@ const IMMUTABLE_ZKVEM_GAS_OVERRIDES = {
43009
43021
  maxPriorityFeePerGas: BigNumber$1.from(10e9),
43010
43022
  };
43011
43023
 
43012
- const SDK_VERSION_MARKER = '1.13.2';
43024
+ const SDK_VERSION_MARKER = '1.13.3';
43013
43025
  // This SDK version is replaced by the `yarn build` command ran on the root level
43014
43026
  const globalPackageVersion = () => SDK_VERSION_MARKER;
43015
43027
 
package/dist/orderbook.js CHANGED
@@ -131,7 +131,7 @@ const flattenProperties = (properties) => {
131
131
  };
132
132
 
133
133
  // WARNING: DO NOT CHANGE THE STRING BELOW. IT GETS REPLACED AT BUILD TIME.
134
- const SDK_VERSION = '1.13.2';
134
+ const SDK_VERSION = '1.13.3';
135
135
  const getReferrer = () => {
136
136
  if (isNode()) {
137
137
  return '';
package/dist/passport.js CHANGED
@@ -9346,7 +9346,7 @@ class MultiRollupApiClients {
9346
9346
  }
9347
9347
 
9348
9348
  // eslint-disable-next-line @typescript-eslint/naming-convention
9349
- const defaultHeaders = { 'x-sdk-version': 'ts-immutable-sdk-1.13.2' };
9349
+ const defaultHeaders = { 'x-sdk-version': 'ts-immutable-sdk-1.13.3' };
9350
9350
  const createConfig = ({ basePath, headers, }) => {
9351
9351
  if (!basePath.trim()) {
9352
9352
  throw Error('basePath can not be empty');
@@ -9525,7 +9525,7 @@ const flattenProperties = (properties) => {
9525
9525
  };
9526
9526
 
9527
9527
  // WARNING: DO NOT CHANGE THE STRING BELOW. IT GETS REPLACED AT BUILD TIME.
9528
- const SDK_VERSION = '1.13.2';
9528
+ const SDK_VERSION = '1.13.3';
9529
9529
  const getReferrer = () => {
9530
9530
  if (isNode()) {
9531
9531
  return '';
@@ -9744,7 +9744,7 @@ const createImmutableXConfiguration = ({ basePath, chainID, coreContractAddress,
9744
9744
  chainID,
9745
9745
  coreContractAddress,
9746
9746
  registrationContractAddress,
9747
- sdkVersion: 'ts-immutable-sdk-1.13.2',
9747
+ sdkVersion: 'ts-immutable-sdk-1.13.3',
9748
9748
  });
9749
9749
  /**
9750
9750
  * Sets `sdkVersion` at the time of build
@@ -15159,7 +15159,7 @@ async function registerOffchain(userAdminKeySigner, starkSigner, unregisteredUse
15159
15159
  return response;
15160
15160
  }
15161
15161
  catch (err) {
15162
- if (globalAxios$1.isAxiosError(err) && err.status === 409) {
15162
+ if (globalAxios$1.isAxiosError(err) && err.response?.status === 409) {
15163
15163
  // The user already registered, but the user token is not updated yet.
15164
15164
  await forceUserRefresh(authManager);
15165
15165
  return { tx_hash: '' };
@@ -15178,8 +15178,8 @@ class PassportImxProvider {
15178
15178
  /**
15179
15179
  * This property is set during initialisation and stores the signers in a promise.
15180
15180
  * This property is not meant to be accessed directly, but through the
15181
- * `getAuthenticatedUserAndSigners` method.
15182
- * @see getAuthenticatedUserAndSigners
15181
+ * `#getSigners` method.
15182
+ * @see #getSigners
15183
15183
  */
15184
15184
  signers;
15185
15185
  signerInitialisationError;
@@ -15189,7 +15189,7 @@ class PassportImxProvider {
15189
15189
  this.magicAdapter = magicAdapter;
15190
15190
  this.imxApiClients = imxApiClients;
15191
15191
  this.guardianClient = guardianClient;
15192
- this.initialiseSigners();
15192
+ this.#initialiseSigners();
15193
15193
  passportEventEmitter.on(PassportEvents.LOGGED_OUT, this.handleLogout);
15194
15194
  }
15195
15195
  handleLogout = () => {
@@ -15204,10 +15204,10 @@ class PassportImxProvider {
15204
15204
  * so that it doesn't result in an unhandled promise rejection.
15205
15205
  *
15206
15206
  * This error is thrown when the signers are requested through:
15207
- * @see getAuthenticatedUserAndSigners
15207
+ * @see #getSigners
15208
15208
  *
15209
15209
  */
15210
- initialiseSigners() {
15210
+ #initialiseSigners() {
15211
15211
  const generateSigners = async () => {
15212
15212
  const user = await this.authManager.getUser();
15213
15213
  // The user will be present because the factory validates it
@@ -15229,11 +15229,14 @@ class PassportImxProvider {
15229
15229
  }
15230
15230
  });
15231
15231
  }
15232
- async getAuthenticatedUserAndSigners() {
15232
+ async #getAuthenticatedUser() {
15233
15233
  const user = await this.authManager.getUser();
15234
15234
  if (!user || !this.signers) {
15235
15235
  throw new PassportError('User has been logged out', PassportErrorType.NOT_LOGGED_IN_ERROR);
15236
15236
  }
15237
+ return user;
15238
+ }
15239
+ async #getSigners() {
15237
15240
  const signers = await this.signers;
15238
15241
  // Throw the stored error if the signers failed to initialise
15239
15242
  if (typeof signers === 'undefined') {
@@ -15242,17 +15245,24 @@ class PassportImxProvider {
15242
15245
  }
15243
15246
  throw new Error('Signers failed to initialise');
15244
15247
  }
15245
- return { user, ...signers };
15248
+ return signers;
15246
15249
  }
15247
- async getRegisteredImxUserAndSigners() {
15248
- const { user, starkSigner, ethSigner } = await this.getAuthenticatedUserAndSigners();
15250
+ async #getRegisteredImxUserAndSigners() {
15251
+ const [user, signers] = await Promise.all([
15252
+ this.#getAuthenticatedUser(),
15253
+ this.#getSigners(),
15254
+ ]);
15249
15255
  if (!isUserImx(user)) {
15250
15256
  throw new PassportError('User has not been registered with StarkEx', PassportErrorType.USER_NOT_REGISTERED_ERROR);
15251
15257
  }
15252
- return { user, starkSigner, ethSigner };
15258
+ return {
15259
+ user,
15260
+ starkSigner: signers.starkSigner,
15261
+ ethSigner: signers.ethSigner,
15262
+ };
15253
15263
  }
15254
15264
  async transfer(request) {
15255
- const { user, starkSigner } = await this.getRegisteredImxUserAndSigners();
15265
+ const { user, starkSigner } = await this.#getRegisteredImxUserAndSigners();
15256
15266
  return transfer({
15257
15267
  request,
15258
15268
  user,
@@ -15262,20 +15272,22 @@ class PassportImxProvider {
15262
15272
  });
15263
15273
  }
15264
15274
  async registerOffchain() {
15265
- const { user, ethSigner, starkSigner } = await this.getAuthenticatedUserAndSigners();
15266
- return await registerOffchain(ethSigner, starkSigner, user, this.authManager, this.imxApiClients);
15275
+ const [user, signers] = await Promise.all([
15276
+ this.#getAuthenticatedUser(),
15277
+ this.#getSigners(),
15278
+ ]);
15279
+ return await registerOffchain(signers.ethSigner, signers.starkSigner, user, this.authManager, this.imxApiClients);
15267
15280
  }
15268
15281
  async isRegisteredOffchain() {
15269
- const { user } = await this.getAuthenticatedUserAndSigners();
15282
+ const user = await this.#getAuthenticatedUser();
15270
15283
  return !!user.imx;
15271
15284
  }
15272
- // TODO: Remove once implemented
15273
15285
  // eslint-disable-next-line class-methods-use-this, @typescript-eslint/no-unused-vars
15274
15286
  isRegisteredOnchain() {
15275
15287
  throw new PassportError('Operation not supported', PassportErrorType.OPERATION_NOT_SUPPORTED_ERROR);
15276
15288
  }
15277
15289
  async createOrder(request) {
15278
- const { user, starkSigner } = await this.getRegisteredImxUserAndSigners();
15290
+ const { user, starkSigner } = await this.#getRegisteredImxUserAndSigners();
15279
15291
  return createOrder({
15280
15292
  request,
15281
15293
  user,
@@ -15285,7 +15297,7 @@ class PassportImxProvider {
15285
15297
  });
15286
15298
  }
15287
15299
  async cancelOrder(request) {
15288
- const { user, starkSigner } = await this.getRegisteredImxUserAndSigners();
15300
+ const { user, starkSigner } = await this.#getRegisteredImxUserAndSigners();
15289
15301
  return cancelOrder({
15290
15302
  request,
15291
15303
  user,
@@ -15295,7 +15307,7 @@ class PassportImxProvider {
15295
15307
  });
15296
15308
  }
15297
15309
  async createTrade(request) {
15298
- const { user, starkSigner } = await this.getRegisteredImxUserAndSigners();
15310
+ const { user, starkSigner } = await this.#getRegisteredImxUserAndSigners();
15299
15311
  return createTrade({
15300
15312
  request,
15301
15313
  user,
@@ -15305,7 +15317,7 @@ class PassportImxProvider {
15305
15317
  });
15306
15318
  }
15307
15319
  async batchNftTransfer(request) {
15308
- const { user, starkSigner } = await this.getRegisteredImxUserAndSigners();
15320
+ const { user, starkSigner } = await this.#getRegisteredImxUserAndSigners();
15309
15321
  return batchNftTransfer({
15310
15322
  request,
15311
15323
  user,
@@ -15315,7 +15327,7 @@ class PassportImxProvider {
15315
15327
  });
15316
15328
  }
15317
15329
  async exchangeTransfer(request) {
15318
- const { user, starkSigner } = await this.getRegisteredImxUserAndSigners();
15330
+ const { user, starkSigner } = await this.#getRegisteredImxUserAndSigners();
15319
15331
  return exchangeTransfer({
15320
15332
  request,
15321
15333
  user,
@@ -15323,17 +15335,14 @@ class PassportImxProvider {
15323
15335
  exchangesApi: this.immutableXClient.exchangeApi,
15324
15336
  });
15325
15337
  }
15326
- // TODO: Remove once implemented
15327
15338
  // eslint-disable-next-line class-methods-use-this, @typescript-eslint/no-unused-vars
15328
15339
  deposit(deposit) {
15329
15340
  throw new PassportError('Operation not supported', PassportErrorType.OPERATION_NOT_SUPPORTED_ERROR);
15330
15341
  }
15331
- // TODO: Remove once implemented
15332
15342
  // eslint-disable-next-line class-methods-use-this, @typescript-eslint/no-unused-vars
15333
15343
  prepareWithdrawal(request) {
15334
15344
  throw new PassportError('Operation not supported', PassportErrorType.OPERATION_NOT_SUPPORTED_ERROR);
15335
15345
  }
15336
- // TODO: Remove once implemented
15337
15346
  // eslint-disable-next-line class-methods-use-this
15338
15347
  completeWithdrawal(
15339
15348
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
@@ -15343,7 +15352,10 @@ class PassportImxProvider {
15343
15352
  throw new PassportError('Operation not supported', PassportErrorType.OPERATION_NOT_SUPPORTED_ERROR);
15344
15353
  }
15345
15354
  async getAddress() {
15346
- const { user } = await this.getRegisteredImxUserAndSigners();
15355
+ const user = await this.#getAuthenticatedUser();
15356
+ if (!isUserImx(user)) {
15357
+ throw new PassportError('User has not been registered with StarkEx', PassportErrorType.USER_NOT_REGISTERED_ERROR);
15358
+ }
15347
15359
  return Promise.resolve(user.imx.ethAddress);
15348
15360
  }
15349
15361
  }