@explorins/pers-signer 1.0.17 → 1.0.18

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.
@@ -565,6 +565,30 @@ PersService.currentTenantId = null;
565
565
  PersService.useStaging = false;
566
566
  PersService.TENANT_CACHE_TTL = 24 * 60 * 60 * 1000; // 24 hours - tenant configs are essentially static
567
567
 
568
+ /**
569
+ * Transaction statuses that allow signing
570
+ */
571
+ const SIGNABLE_STATUSES = [browser.TransactionStatus.PENDING_SIGNATURE, browser.TransactionStatus.CREATED];
572
+
573
+ /**
574
+ * Error codes for transaction signing operations
575
+ */
576
+ exports.TransactionSigningErrorCode = void 0;
577
+ (function (TransactionSigningErrorCode) {
578
+ TransactionSigningErrorCode["INVALID_TOKENS"] = "INVALID_TOKENS";
579
+ TransactionSigningErrorCode["TRANSACTION_NOT_FOUND"] = "TRANSACTION_NOT_FOUND";
580
+ TransactionSigningErrorCode["TRANSACTION_NOT_PENDING"] = "TRANSACTION_NOT_PENDING";
581
+ TransactionSigningErrorCode["WALLET_NOT_AVAILABLE"] = "WALLET_NOT_AVAILABLE";
582
+ TransactionSigningErrorCode["WEBAUTHN_OPERATION_IN_PROGRESS"] = "WEBAUTHN_OPERATION_IN_PROGRESS";
583
+ TransactionSigningErrorCode["SIGNING_CANCELLED"] = "SIGNING_CANCELLED";
584
+ TransactionSigningErrorCode["PERS_AUTH_FAILED"] = "PERS_AUTH_FAILED";
585
+ TransactionSigningErrorCode["AUTH_FAILED"] = "AUTH_FAILED";
586
+ TransactionSigningErrorCode["TRANSACTION_NOT_READY"] = "TRANSACTION_NOT_READY";
587
+ TransactionSigningErrorCode["SUBMISSION_FAILED"] = "SUBMISSION_FAILED";
588
+ TransactionSigningErrorCode["SERVER_ERROR"] = "SERVER_ERROR";
589
+ TransactionSigningErrorCode["UNKNOWN_ERROR"] = "UNKNOWN_ERROR";
590
+ })(exports.TransactionSigningErrorCode || (exports.TransactionSigningErrorCode = {}));
591
+
568
592
  // Adapter function to convert backend signature response to legacy format
569
593
  const adaptSignatureResponse = (newResponse) => {
570
594
  if (!newResponse.signature) {
@@ -890,25 +914,6 @@ class SigningService {
890
914
  }
891
915
  }
892
916
 
893
- /**
894
- * Error codes for transaction signing operations
895
- */
896
- exports.TransactionSigningErrorCode = void 0;
897
- (function (TransactionSigningErrorCode) {
898
- TransactionSigningErrorCode["INVALID_TOKENS"] = "INVALID_TOKENS";
899
- TransactionSigningErrorCode["TRANSACTION_NOT_FOUND"] = "TRANSACTION_NOT_FOUND";
900
- TransactionSigningErrorCode["TRANSACTION_NOT_PENDING"] = "TRANSACTION_NOT_PENDING";
901
- TransactionSigningErrorCode["WALLET_NOT_AVAILABLE"] = "WALLET_NOT_AVAILABLE";
902
- TransactionSigningErrorCode["WEBAUTHN_OPERATION_IN_PROGRESS"] = "WEBAUTHN_OPERATION_IN_PROGRESS";
903
- TransactionSigningErrorCode["SIGNING_CANCELLED"] = "SIGNING_CANCELLED";
904
- TransactionSigningErrorCode["PERS_AUTH_FAILED"] = "PERS_AUTH_FAILED";
905
- TransactionSigningErrorCode["AUTH_FAILED"] = "AUTH_FAILED";
906
- TransactionSigningErrorCode["TRANSACTION_NOT_READY"] = "TRANSACTION_NOT_READY";
907
- TransactionSigningErrorCode["SUBMISSION_FAILED"] = "SUBMISSION_FAILED";
908
- TransactionSigningErrorCode["SERVER_ERROR"] = "SERVER_ERROR";
909
- TransactionSigningErrorCode["UNKNOWN_ERROR"] = "UNKNOWN_ERROR";
910
- })(exports.TransactionSigningErrorCode || (exports.TransactionSigningErrorCode = {}));
911
-
912
917
  /**
913
918
  * Handles all error-related operations for transaction signing
914
919
  */
@@ -1108,11 +1113,6 @@ class WebAuthnCoordinator {
1108
1113
  }
1109
1114
  }
1110
1115
 
1111
- /**
1112
- * Transaction statuses that allow signing
1113
- */
1114
- const SIGNABLE_STATUSES = [browser.TransactionStatus.PENDING_SIGNATURE, browser.TransactionStatus.CREATED];
1115
-
1116
1116
  /**
1117
1117
  * Service for orchestrating transaction signing operations
1118
1118
  * Handles the complete flow from transaction preparation to submission
@@ -1569,11 +1569,13 @@ class AuthenticationService {
1569
1569
  throw new Error('Registration completed but no response received');
1570
1570
  }
1571
1571
  }
1572
- return {
1573
- identifier,
1572
+ const user = {
1573
+ identifier: identifier,
1574
1574
  signerAuthToken: signerToken,
1575
- persAccessToken
1575
+ persAccessToken: persAccessToken,
1576
+ expiresAt: Date.now() + 300000 // 5 minutes
1576
1577
  };
1578
+ return user;
1577
1579
  }
1578
1580
  catch (error) {
1579
1581
  console.error(`[PersSignerSDK] Combined authentication failed for ${identifier}:`, error);
@@ -1783,25 +1785,17 @@ class PersSignerSDK {
1783
1785
  throw new Error('Invalid or expired JWT token');
1784
1786
  }
1785
1787
  const identifier = payload.identifierEmail || payload.email || payload.userId;
1786
- const tenantId = payload.tenantId || '';
1787
1788
  if (!identifier) {
1788
1789
  throw new Error('JWT token missing user identifier (identifierEmail, email, or userId)');
1789
1790
  }
1790
1791
  // Check cache first
1791
1792
  const cachedUser = UserCache.get(identifier);
1792
- if (cachedUser && cachedUser.tenantId === tenantId && Date.now() < cachedUser.expiresAt) {
1793
+ if (cachedUser && Date.now() < cachedUser.expiresAt) {
1793
1794
  return cachedUser;
1794
1795
  }
1795
1796
  try {
1796
1797
  // Authenticate and cache
1797
- const authResult = await this.authenticationService.combinedAuthentication(identifier, jwtToken);
1798
- const user = {
1799
- identifier: authResult.identifier,
1800
- signerAuthToken: authResult.signerAuthToken,
1801
- persAccessToken: authResult.persAccessToken,
1802
- tenantId,
1803
- expiresAt: Date.now() + 300000 // 5 minutes
1804
- };
1798
+ const user = await this.authenticationService.combinedAuthentication(identifier, jwtToken);
1805
1799
  UserCache.set(identifier, user);
1806
1800
  return user;
1807
1801
  }
@@ -1841,6 +1835,9 @@ class PersSignerSDK {
1841
1835
  if (!payload?.transactionId) {
1842
1836
  throw new Error('JWT token missing transactionId in payload');
1843
1837
  }
1838
+ if (!payload.tenantId) {
1839
+ throw new Error('JWT token missing tenantId in payload');
1840
+ }
1844
1841
  const authTokens = {
1845
1842
  signerAuthToken: user.signerAuthToken,
1846
1843
  persAccessToken: user.persAccessToken
@@ -1849,7 +1846,7 @@ class PersSignerSDK {
1849
1846
  const persSigningData = await this.transactionSigningService.getPersSigningData({
1850
1847
  transactionId: payload.transactionId,
1851
1848
  authTokens,
1852
- tenantId: user.tenantId
1849
+ tenantId: payload.tenantId
1853
1850
  });
1854
1851
  const result = await this.signTransaction(persSigningData, jwtToken);
1855
1852
  if (!result.success) {
@@ -1891,6 +1888,9 @@ class PersSignerSDK {
1891
1888
  if (!payload?.transactionId) {
1892
1889
  throw new Error('JWT token missing transactionId in payload');
1893
1890
  }
1891
+ if (!payload.tenantId) {
1892
+ throw new Error('JWT token missing tenantId in payload');
1893
+ }
1894
1894
  const authTokens = {
1895
1895
  signerAuthToken: user.signerAuthToken,
1896
1896
  persAccessToken: user.persAccessToken
@@ -1898,7 +1898,7 @@ class PersSignerSDK {
1898
1898
  try {
1899
1899
  const result = await this.transactionSigningService.signTransaction({
1900
1900
  transactionId: payload.transactionId,
1901
- tenantId: user.tenantId,
1901
+ tenantId: payload.tenantId,
1902
1902
  authTokens,
1903
1903
  ethersProviderUrl: this.config.ethersProviderUrl || ''
1904
1904
  }, signingData);
@@ -11296,6 +11296,14 @@ var index = /*#__PURE__*/_mergeNamespaces({
11296
11296
  __proto__: null
11297
11297
  }, [sdkBrowser]);
11298
11298
 
11299
+ Object.defineProperty(exports, "TRANSACTION_FORMATS", {
11300
+ enumerable: true,
11301
+ get: function () { return browser.TRANSACTION_FORMATS; }
11302
+ });
11303
+ Object.defineProperty(exports, "TRANSACTION_FORMAT_DESCRIPTIONS", {
11304
+ enumerable: true,
11305
+ get: function () { return browser.TRANSACTION_FORMAT_DESCRIPTIONS; }
11306
+ });
11299
11307
  Object.defineProperty(exports, "TransactionStatus", {
11300
11308
  enumerable: true,
11301
11309
  get: function () { return browser.TransactionStatus; }