@privy-io/js-sdk-core 0.8.3 → 0.8.4

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.
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages-js-public/js-sdk-core/src/src/Token.ts","packages-js-public/js-sdk-core/src/src/storage/Storage.ts","packages-js-public/js-sdk-core/src/src/Session.ts","packages-js-public/js-sdk-core/src/src/toAbortSignalTimeout.ts","packages-js-public/js-sdk-core/src/src/PrivyInternal.ts","packages-js-public/js-sdk-core/src/src/CustomProviderApi.ts","packages-js-public/js-sdk-core/src/src/EmailApi.ts","packages-js-public/js-sdk-core/src/src/OAuthApi.ts","packages-js-public/js-sdk-core/src/src/PhoneApi.ts","packages-js-public/js-sdk-core/src/src/AuthApi.ts","packages-js-public/js-sdk-core/src/src/chains/arbitrum.ts","packages-js-public/js-sdk-core/src/src/chains/arbitrumGoerli.ts","packages-js-public/js-sdk-core/src/src/chains/avalanche.ts","packages-js-public/js-sdk-core/src/src/chains/avalancheFuji.ts","packages-js-public/js-sdk-core/src/src/chains/base.ts","packages-js-public/js-sdk-core/src/src/chains/baseGoerli.ts","packages-js-public/js-sdk-core/src/src/chains/celo.ts","packages-js-public/js-sdk-core/src/src/chains/celoAlfajores.ts","packages-js-public/js-sdk-core/src/src/chains/filecoin.ts","packages-js-public/js-sdk-core/src/src/chains/filecoinCalibration.ts","packages-js-public/js-sdk-core/src/src/chains/goerli.ts","packages-js-public/js-sdk-core/src/src/chains/holesky.ts","packages-js-public/js-sdk-core/src/src/chains/linea.ts","packages-js-public/js-sdk-core/src/src/chains/lineaTestnet.ts","packages-js-public/js-sdk-core/src/src/chains/mainnet.ts","packages-js-public/js-sdk-core/src/src/chains/optimism.ts","packages-js-public/js-sdk-core/src/src/chains/optimismGoerli.ts","packages-js-public/js-sdk-core/src/src/chains/polygon.ts","packages-js-public/js-sdk-core/src/src/chains/polygonMumbai.ts","packages-js-public/js-sdk-core/src/src/chains/redstoneHolesky.ts","packages-js-public/js-sdk-core/src/src/chains/sepolia.ts","packages-js-public/js-sdk-core/src/src/chains/types.ts","packages-js-public/js-sdk-core/src/src/chains/index.ts","packages-js-public/js-sdk-core/src/src/embedded/types.ts","packages-js-public/js-sdk-core/src/src/embedded/EventCallbackQueue.ts","packages-js-public/js-sdk-core/src/src/embedded/errors.ts","packages-js-public/js-sdk-core/src/src/embedded/EmebeddedWalletProxy.ts","packages-js-public/js-sdk-core/src/src/embedded/methods.ts","packages-js-public/js-sdk-core/src/src/embedded/utils.ts","packages-js-public/js-sdk-core/src/src/embedded/EmbeddedWalletProvider.ts","packages-js-public/js-sdk-core/src/src/embedded/index.ts","packages-js-public/js-sdk-core/src/src/EmbeddedWalletApi.ts","packages-js-public/js-sdk-core/src/src/UserApi.ts","packages-js-public/js-sdk-core/src/src/Privy.ts","packages-js-public/js-sdk-core/src/src/storage/LocalStorage.ts","packages-js-public/js-sdk-core/src/src/storage/InMemoryStorage.ts","packages-js-public/js-sdk-core/src/src/types.ts","packages-js-public/js-sdk-core/src/src/index.ts","packages-js-public/js-sdk-core/src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"import {TextEncoder} from 'text-encoding';\n\nimport Privy from './Privy';\n\nglobalThis.TextEncoder ??= TextEncoder;\n\nexport type {OAuthProviderType} from '@privy-io/public-api';\nexport {LocalStorage} from './storage/LocalStorage';\nexport {InMemoryCache} from './storage/InMemoryStorage';\nexport type {default as Storage} from './storage/Storage';\nexport {PrivyEmbeddedWalletErrorCode, errorIndicatesRecoveryIsNeeded} from './embedded/errors';\n\nexport * from './types';\n\nexport default Privy;\n"],"names":[],"version":3,"file":"index.d.ts.map"}
1
+ {"mappings":"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","sources":["packages-js-public/js-sdk-core/src/src/Token.ts","packages-js-public/js-sdk-core/src/src/storage/Storage.ts","packages-js-public/js-sdk-core/src/src/Session.ts","packages-js-public/js-sdk-core/src/src/toAbortSignalTimeout.ts","packages-js-public/js-sdk-core/src/src/PrivyInternal.ts","packages-js-public/js-sdk-core/src/src/CustomProviderApi.ts","packages-js-public/js-sdk-core/src/src/EmailApi.ts","packages-js-public/js-sdk-core/src/src/OAuthApi.ts","packages-js-public/js-sdk-core/src/src/PhoneApi.ts","packages-js-public/js-sdk-core/src/src/AuthApi.ts","packages-js-public/js-sdk-core/src/src/chains/arbitrum.ts","packages-js-public/js-sdk-core/src/src/chains/arbitrumGoerli.ts","packages-js-public/js-sdk-core/src/src/chains/avalanche.ts","packages-js-public/js-sdk-core/src/src/chains/avalancheFuji.ts","packages-js-public/js-sdk-core/src/src/chains/base.ts","packages-js-public/js-sdk-core/src/src/chains/baseGoerli.ts","packages-js-public/js-sdk-core/src/src/chains/celo.ts","packages-js-public/js-sdk-core/src/src/chains/celoAlfajores.ts","packages-js-public/js-sdk-core/src/src/chains/filecoin.ts","packages-js-public/js-sdk-core/src/src/chains/filecoinCalibration.ts","packages-js-public/js-sdk-core/src/src/chains/goerli.ts","packages-js-public/js-sdk-core/src/src/chains/holesky.ts","packages-js-public/js-sdk-core/src/src/chains/linea.ts","packages-js-public/js-sdk-core/src/src/chains/lineaTestnet.ts","packages-js-public/js-sdk-core/src/src/chains/mainnet.ts","packages-js-public/js-sdk-core/src/src/chains/optimism.ts","packages-js-public/js-sdk-core/src/src/chains/optimismGoerli.ts","packages-js-public/js-sdk-core/src/src/chains/polygon.ts","packages-js-public/js-sdk-core/src/src/chains/polygonMumbai.ts","packages-js-public/js-sdk-core/src/src/chains/redstoneHolesky.ts","packages-js-public/js-sdk-core/src/src/chains/sepolia.ts","packages-js-public/js-sdk-core/src/src/chains/types.ts","packages-js-public/js-sdk-core/src/src/chains/index.ts","packages-js-public/js-sdk-core/src/src/embedded/types.ts","packages-js-public/js-sdk-core/src/src/embedded/EventCallbackQueue.ts","packages-js-public/js-sdk-core/src/src/embedded/errors.ts","packages-js-public/js-sdk-core/src/src/embedded/EmebeddedWalletProxy.ts","packages-js-public/js-sdk-core/src/src/embedded/methods.ts","packages-js-public/js-sdk-core/src/src/embedded/utils.ts","packages-js-public/js-sdk-core/src/src/embedded/EmbeddedWalletProvider.ts","packages-js-public/js-sdk-core/src/src/embedded/index.ts","packages-js-public/js-sdk-core/src/src/EmbeddedWalletApi.ts","packages-js-public/js-sdk-core/src/src/UserApi.ts","packages-js-public/js-sdk-core/src/src/Privy.ts","packages-js-public/js-sdk-core/src/src/storage/LocalStorage.ts","packages-js-public/js-sdk-core/src/src/storage/InMemoryStorage.ts","packages-js-public/js-sdk-core/src/src/types.ts","packages-js-public/js-sdk-core/src/src/index.ts","packages-js-public/js-sdk-core/src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"import {TextEncoder} from 'text-encoding';\n\nimport Privy from './Privy';\n\nglobalThis.TextEncoder ??= TextEncoder;\n\nexport type {OAuthProviderType} from '@privy-io/public-api';\nexport {LocalStorage} from './storage/LocalStorage';\nexport {InMemoryCache} from './storage/InMemoryStorage';\nexport type {default as Storage} from './storage/Storage';\nexport {PrivyEmbeddedWalletErrorCode, errorIndicatesRecoveryIsNeeded} from './embedded/errors';\n\nexport * from './types';\n\nexport default Privy;\n"],"names":[],"version":3,"file":"index.d.ts.map"}
package/dist/index.js CHANGED
@@ -1719,6 +1719,9 @@ class $99761f88b99b6cb6$export$2e2bcd8739ae039 {
1719
1719
  accessToken: accessToken,
1720
1720
  recoveryPassword: password
1721
1721
  });
1722
+ // This is used to ensure that after the user's embedded wallet
1723
+ // account is created We refetch the user and get the most up to
1724
+ // date version (including the new linked account).
1722
1725
  if (this.#privyInternal.callbacks?.setUser) await this.#privyInternal.refreshSession();
1723
1726
  if (!address) throw new Error("Failed to create wallet");
1724
1727
  return new (0, $a983a2431488eb50$export$26f7ada50d209c97)({
@@ -1860,7 +1863,7 @@ class $99761f88b99b6cb6$export$2e2bcd8739ae039 {
1860
1863
 
1861
1864
 
1862
1865
  var $af98a8a573bb7c25$exports = {};
1863
- $af98a8a573bb7c25$exports = JSON.parse('{"name":"@privy-io/js-sdk-core","version":"0.8.3","description":"Vanilla JS client for the Privy Auth API","keywords":["authentication","authorization","identity","privacy","privy","user data","web3"],"license":"Apache-2.0","source":"./src/index.ts","main":"./dist/index.js","module":"./dist/index.mjs","types":"./dist/index.d.ts","exports":{".":{"require":"./dist/index.js","import":"./dist/index.mjs","types":"./dist/index.d.ts"}},"targets":{"main":{"isLibrary":true,"sourceMap":false},"module":{"isLibrary":true,"sourceMap":false}},"files":["dist/**/*","LICENSE","README.md"],"scripts":{"build":"npx parcel build --no-cache","clean":"rm -rf dist .turbo","dev":"npx parcel watch -p 1234","test":"jest --testMatch \\"**/test/unit/**/*.test.ts\\"","test:ci":"npm run test","test-integration":"jest --testMatch \\"**/test/integration/**/*.test.ts\\"","lint":"eslint \\"src/**/*.{ts,tsx,js,jsx}\\" && npx tsc --noEmit","format":"eslint \\"src/**/*.{ts,tsx,js,jsx}\\" --fix"},"devDependencies":{"@privy-io/tsconfig":"*","@privy-io/parcel-config":"*","@tsconfig/node16-strictest-esm":"^1.0.3","@types/text-encoding":"^0.0.37","parcel":"2.10.1"},"dependencies":{"@ethersproject/providers":"^5.7.2","@privy-io/public-api":"1.4.3","eventemitter3":"^5.0.1","fetch-retry":"^5.0.6","jose":"^4.11.2","js-cookie":"^3.0.5","text-encoding":"^0.7.0","uuid":">=8 <10"},"author":"privy.io","browserslist":["defaults","node >= 18","not op_mini all"],"publishConfig":{"access":"public"}}');
1866
+ $af98a8a573bb7c25$exports = JSON.parse('{"name":"@privy-io/js-sdk-core","version":"0.8.4","description":"Vanilla JS client for the Privy Auth API","keywords":["authentication","authorization","identity","privacy","privy","user data","web3"],"license":"Apache-2.0","source":"./src/index.ts","main":"./dist/index.js","module":"./dist/index.mjs","types":"./dist/index.d.ts","exports":{".":{"require":"./dist/index.js","import":"./dist/index.mjs","types":"./dist/index.d.ts"}},"targets":{"main":{"isLibrary":true,"sourceMap":false},"module":{"isLibrary":true,"sourceMap":false}},"files":["dist/**/*","LICENSE","README.md"],"scripts":{"build":"npx parcel build --no-cache","clean":"rm -rf dist .turbo","dev":"npx parcel watch -p 1234","test":"jest --testMatch \\"**/test/unit/**/*.test.ts\\"","test:ci":"npm run test","test-integration":"jest --testMatch \\"**/test/integration/**/*.test.ts\\"","lint":"eslint \\"src/**/*.{ts,tsx,js,jsx}\\" && npx tsc --noEmit","format":"eslint \\"src/**/*.{ts,tsx,js,jsx}\\" --fix"},"devDependencies":{"@privy-io/tsconfig":"*","@privy-io/parcel-config":"*","@tsconfig/node16-strictest-esm":"^1.0.3","@types/text-encoding":"^0.0.37","parcel":"2.10.1"},"dependencies":{"@ethersproject/providers":"^5.7.2","@privy-io/public-api":"1.4.3","eventemitter3":"^5.0.1","fetch-retry":"^5.0.6","jose":"^4.11.2","js-cookie":"^3.0.5","text-encoding":"^0.7.0","uuid":">=8 <10"},"author":"privy.io","browserslist":["defaults","node >= 18","not op_mini all"],"publishConfig":{"access":"public"}}');
1864
1867
 
1865
1868
 
1866
1869
 
@@ -1981,11 +1984,7 @@ class $4a5ceffc04a8e7b0$export$1fb4852a55678982 {
1981
1984
  * 2. Server cookies
1982
1985
  *
1983
1986
  * @returns true if we have what appear to be valid credentials, false otherwise.
1984
- */ async hasRefreshCredentials() {
1985
- const [token, refreshToken] = await Promise.all([
1986
- this.getToken(),
1987
- this.getRefreshToken()
1988
- ]);
1987
+ */ hasRefreshCredentials(token, refreshToken) {
1989
1988
  return this.mightHaveServerCookies || typeof token === "string" && typeof refreshToken === "string";
1990
1989
  }
1991
1990
  /**
@@ -2001,8 +2000,9 @@ class $4a5ceffc04a8e7b0$export$1fb4852a55678982 {
2001
2000
  * expired or expiring soon.
2002
2001
  *
2003
2002
  * @returns true if token is considered active, false otherwise.
2004
- */ async hasActiveToken() {
2005
- const token = (0, $4c28dd58a3e1b414$export$50792b0e93539fde).parse(await this.getToken());
2003
+ */ tokenIsActive(tokenRaw) {
2004
+ if (!tokenRaw) return false;
2005
+ const token = (0, $4c28dd58a3e1b414$export$50792b0e93539fde).parse(tokenRaw);
2006
2006
  return token !== null && !token.isExpired($4a5ceffc04a8e7b0$var$DEFAULT_EXPIRATION_PADDING_IN_SECONDS);
2007
2007
  }
2008
2008
  destroyLocalState() {
@@ -2068,6 +2068,10 @@ class $5945f4703f62befa$export$9e80c3751b841788 {
2068
2068
  #sdkVersion;
2069
2069
  #fetch;
2070
2070
  /**
2071
+ * Prevents multiple calls in short succession from being made to the session endpoint,
2072
+ * As this results in re-using a refresh_token which invalidates the ongoing session
2073
+ */ #cache;
2074
+ /**
2071
2075
  * Constructor for PrivyInternal class
2072
2076
  * @param {PrivyInternalOptions} o - options for PrivyInternal
2073
2077
  * @property {Storage} o.storage - The storage instance to be used
@@ -2075,6 +2079,7 @@ class $5945f4703f62befa$export$9e80c3751b841788 {
2075
2079
  * @property {string} o.baseUrl - The base URL for the application
2076
2080
  */ constructor(o){
2077
2081
  this.#sdkVersion = `js-sdk-core:${0, $af98a8a573bb7c25$exports.version}`;
2082
+ this.#cache = new Map();
2078
2083
  this.baseUrl = o.baseUrl ?? $5945f4703f62befa$var$DEFAULT_PRIVY_API_URL;
2079
2084
  this.appId = o.appId;
2080
2085
  this.#storage = o.storage;
@@ -2149,7 +2154,8 @@ class $5945f4703f62befa$export$9e80c3751b841788 {
2149
2154
  headers.set("Accept", "application/json");
2150
2155
  if (this.nativeAppIdentifier) headers.set("x-native-app-identifier", this.nativeAppIdentifier);
2151
2156
  return {
2152
- signal: (0, $6e80017c879d5d9d$export$2e2bcd8739ae039)(5000),
2157
+ // 20 second tmeout on all requests, same as react-auth
2158
+ signal: (0, $6e80017c879d5d9d$export$2e2bcd8739ae039)(20000),
2153
2159
  headers: headers,
2154
2160
  credentials: "include"
2155
2161
  };
@@ -2202,40 +2208,70 @@ class $5945f4703f62befa$export$9e80c3751b841788 {
2202
2208
  *
2203
2209
  * Returns a promise that resolves to the response of the session refresh
2204
2210
  */ async refreshSession() {
2205
- const refresh_token = await this.session.getRefreshToken() ?? undefined;
2211
+ const refreshToken = await this.session.getRefreshToken() ?? undefined;
2212
+ // Use the refresh token as the cache key, if there is no stored token
2213
+ // (i.e. the current app is using cookies) then we use a hardcoded cache key.
2214
+ const key = refreshToken ?? "key";
2215
+ const cached = this.#cache.get(key);
2216
+ if (cached) return await cached;
2217
+ const promise = this.#refreshSession(refreshToken);
2218
+ this.#cache.set(key, promise);
2219
+ try {
2220
+ return await promise;
2221
+ } catch (e) {
2222
+ throw e;
2223
+ } finally{
2224
+ this.#cache.delete(key);
2225
+ }
2226
+ }
2227
+ /**
2228
+ * Private internals of refresh session. Allows us to cache the request higher up
2229
+ * the callstack while separating the actual refresh logic.
2230
+ */ async #refreshSession(refreshToken) {
2206
2231
  try {
2207
2232
  const res = await this.fetch((0, $bwzhE$privyiopublicapi.refreshSession), {
2208
2233
  body: {
2209
- refresh_token: refresh_token
2234
+ refresh_token: refreshToken
2210
2235
  },
2211
2236
  options: {
2212
2237
  onRequest: this.beforeRequestWithoutRefresh.bind(this)
2213
2238
  }
2214
2239
  });
2240
+ // In some cases we get a PartialAuthenticatedView which contains the
2241
+ // user object but no tokens. On our clients we want to treat this as
2242
+ // a logged out state so we throw this error and handle it similar to
2243
+ // a network error.
2244
+ if (!res.token) throw new Error("missing_or_invalid_token");
2215
2245
  this.session.storeToken(res.token);
2216
2246
  this.session.storeRefreshToken(res.refresh_token);
2217
2247
  this.callbacks?.setUser(res.user);
2218
2248
  return res;
2219
2249
  } catch (error) {
2220
- if ($5945f4703f62befa$var$isAuthError(error) && error.code === "missing_or_invalid_token") // If session cannot be refreshed with current refreshToken, clear local auth state
2221
- // otherwise this will result in a loop that is only escapable by clearing storage in userland
2222
- this.session.destroyLocalState();
2250
+ if ($5945f4703f62befa$var$isAuthError(error) && error.code === "missing_or_invalid_token") {
2251
+ // If session cannot be refreshed with current refreshToken, clear local auth state
2252
+ // otherwise this will result in a loop that is only escapable by clearing storage in userland
2253
+ this.session.destroyLocalState();
2254
+ this.callbacks?.setUser(null);
2255
+ } else if (error instanceof Error && error.message === "missing_or_invalid_token") {
2256
+ // Handle when this error is throw explicitly above
2257
+ this.session.destroyLocalState();
2258
+ this.callbacks?.setUser(null);
2259
+ }
2223
2260
  throw error;
2224
2261
  }
2225
2262
  }
2226
2263
  async getAccessToken() {
2227
- const [existingToken, refreshCreds, activeToken] = await Promise.all([
2264
+ const [token, refreshToken] = await Promise.all([
2228
2265
  this.session.getToken(),
2229
- this.session.hasRefreshCredentials(),
2230
- this.session.hasActiveToken()
2266
+ this.session.getRefreshToken()
2231
2267
  ]);
2232
- if (existingToken && !activeToken && refreshCreds) try {
2268
+ if (!this.session.tokenIsActive(token) && this.session.hasRefreshCredentials(token, refreshToken)) try {
2233
2269
  const { token: token } = await this.refreshSession();
2234
2270
  return token;
2235
2271
  } catch (error) {
2236
2272
  return null;
2237
2273
  }
2238
- return existingToken;
2274
+ return token;
2239
2275
  }
2240
2276
  }
2241
2277
 
package/dist/index.mjs CHANGED
@@ -1682,6 +1682,9 @@ class $a3295537bbaaa670$export$2e2bcd8739ae039 {
1682
1682
  accessToken: accessToken,
1683
1683
  recoveryPassword: password
1684
1684
  });
1685
+ // This is used to ensure that after the user's embedded wallet
1686
+ // account is created We refetch the user and get the most up to
1687
+ // date version (including the new linked account).
1685
1688
  if (this.#privyInternal.callbacks?.setUser) await this.#privyInternal.refreshSession();
1686
1689
  if (!address) throw new Error("Failed to create wallet");
1687
1690
  return new (0, $8efc598a5848a0f4$export$26f7ada50d209c97)({
@@ -1823,7 +1826,7 @@ class $a3295537bbaaa670$export$2e2bcd8739ae039 {
1823
1826
 
1824
1827
 
1825
1828
  var $53a9b3651331d972$exports = {};
1826
- $53a9b3651331d972$exports = JSON.parse('{"name":"@privy-io/js-sdk-core","version":"0.8.3","description":"Vanilla JS client for the Privy Auth API","keywords":["authentication","authorization","identity","privacy","privy","user data","web3"],"license":"Apache-2.0","source":"./src/index.ts","main":"./dist/index.js","module":"./dist/index.mjs","types":"./dist/index.d.ts","exports":{".":{"require":"./dist/index.js","import":"./dist/index.mjs","types":"./dist/index.d.ts"}},"targets":{"main":{"isLibrary":true,"sourceMap":false},"module":{"isLibrary":true,"sourceMap":false}},"files":["dist/**/*","LICENSE","README.md"],"scripts":{"build":"npx parcel build --no-cache","clean":"rm -rf dist .turbo","dev":"npx parcel watch -p 1234","test":"jest --testMatch \\"**/test/unit/**/*.test.ts\\"","test:ci":"npm run test","test-integration":"jest --testMatch \\"**/test/integration/**/*.test.ts\\"","lint":"eslint \\"src/**/*.{ts,tsx,js,jsx}\\" && npx tsc --noEmit","format":"eslint \\"src/**/*.{ts,tsx,js,jsx}\\" --fix"},"devDependencies":{"@privy-io/tsconfig":"*","@privy-io/parcel-config":"*","@tsconfig/node16-strictest-esm":"^1.0.3","@types/text-encoding":"^0.0.37","parcel":"2.10.1"},"dependencies":{"@ethersproject/providers":"^5.7.2","@privy-io/public-api":"1.4.3","eventemitter3":"^5.0.1","fetch-retry":"^5.0.6","jose":"^4.11.2","js-cookie":"^3.0.5","text-encoding":"^0.7.0","uuid":">=8 <10"},"author":"privy.io","browserslist":["defaults","node >= 18","not op_mini all"],"publishConfig":{"access":"public"}}');
1829
+ $53a9b3651331d972$exports = JSON.parse('{"name":"@privy-io/js-sdk-core","version":"0.8.4","description":"Vanilla JS client for the Privy Auth API","keywords":["authentication","authorization","identity","privacy","privy","user data","web3"],"license":"Apache-2.0","source":"./src/index.ts","main":"./dist/index.js","module":"./dist/index.mjs","types":"./dist/index.d.ts","exports":{".":{"require":"./dist/index.js","import":"./dist/index.mjs","types":"./dist/index.d.ts"}},"targets":{"main":{"isLibrary":true,"sourceMap":false},"module":{"isLibrary":true,"sourceMap":false}},"files":["dist/**/*","LICENSE","README.md"],"scripts":{"build":"npx parcel build --no-cache","clean":"rm -rf dist .turbo","dev":"npx parcel watch -p 1234","test":"jest --testMatch \\"**/test/unit/**/*.test.ts\\"","test:ci":"npm run test","test-integration":"jest --testMatch \\"**/test/integration/**/*.test.ts\\"","lint":"eslint \\"src/**/*.{ts,tsx,js,jsx}\\" && npx tsc --noEmit","format":"eslint \\"src/**/*.{ts,tsx,js,jsx}\\" --fix"},"devDependencies":{"@privy-io/tsconfig":"*","@privy-io/parcel-config":"*","@tsconfig/node16-strictest-esm":"^1.0.3","@types/text-encoding":"^0.0.37","parcel":"2.10.1"},"dependencies":{"@ethersproject/providers":"^5.7.2","@privy-io/public-api":"1.4.3","eventemitter3":"^5.0.1","fetch-retry":"^5.0.6","jose":"^4.11.2","js-cookie":"^3.0.5","text-encoding":"^0.7.0","uuid":">=8 <10"},"author":"privy.io","browserslist":["defaults","node >= 18","not op_mini all"],"publishConfig":{"access":"public"}}');
1827
1830
 
1828
1831
 
1829
1832
 
@@ -1944,11 +1947,7 @@ class $0b6eb30d38bf8477$export$1fb4852a55678982 {
1944
1947
  * 2. Server cookies
1945
1948
  *
1946
1949
  * @returns true if we have what appear to be valid credentials, false otherwise.
1947
- */ async hasRefreshCredentials() {
1948
- const [token, refreshToken] = await Promise.all([
1949
- this.getToken(),
1950
- this.getRefreshToken()
1951
- ]);
1950
+ */ hasRefreshCredentials(token, refreshToken) {
1952
1951
  return this.mightHaveServerCookies || typeof token === "string" && typeof refreshToken === "string";
1953
1952
  }
1954
1953
  /**
@@ -1964,8 +1963,9 @@ class $0b6eb30d38bf8477$export$1fb4852a55678982 {
1964
1963
  * expired or expiring soon.
1965
1964
  *
1966
1965
  * @returns true if token is considered active, false otherwise.
1967
- */ async hasActiveToken() {
1968
- const token = (0, $efa0c2e06cf7cca2$export$50792b0e93539fde).parse(await this.getToken());
1966
+ */ tokenIsActive(tokenRaw) {
1967
+ if (!tokenRaw) return false;
1968
+ const token = (0, $efa0c2e06cf7cca2$export$50792b0e93539fde).parse(tokenRaw);
1969
1969
  return token !== null && !token.isExpired($0b6eb30d38bf8477$var$DEFAULT_EXPIRATION_PADDING_IN_SECONDS);
1970
1970
  }
1971
1971
  destroyLocalState() {
@@ -2031,6 +2031,10 @@ class $83ff42e2a0f1e24a$export$9e80c3751b841788 {
2031
2031
  #sdkVersion;
2032
2032
  #fetch;
2033
2033
  /**
2034
+ * Prevents multiple calls in short succession from being made to the session endpoint,
2035
+ * As this results in re-using a refresh_token which invalidates the ongoing session
2036
+ */ #cache;
2037
+ /**
2034
2038
  * Constructor for PrivyInternal class
2035
2039
  * @param {PrivyInternalOptions} o - options for PrivyInternal
2036
2040
  * @property {Storage} o.storage - The storage instance to be used
@@ -2038,6 +2042,7 @@ class $83ff42e2a0f1e24a$export$9e80c3751b841788 {
2038
2042
  * @property {string} o.baseUrl - The base URL for the application
2039
2043
  */ constructor(o){
2040
2044
  this.#sdkVersion = `js-sdk-core:${0, $53a9b3651331d972$exports.version}`;
2045
+ this.#cache = new Map();
2041
2046
  this.baseUrl = o.baseUrl ?? $83ff42e2a0f1e24a$var$DEFAULT_PRIVY_API_URL;
2042
2047
  this.appId = o.appId;
2043
2048
  this.#storage = o.storage;
@@ -2112,7 +2117,8 @@ class $83ff42e2a0f1e24a$export$9e80c3751b841788 {
2112
2117
  headers.set("Accept", "application/json");
2113
2118
  if (this.nativeAppIdentifier) headers.set("x-native-app-identifier", this.nativeAppIdentifier);
2114
2119
  return {
2115
- signal: (0, $972f0079ffedc5b0$export$2e2bcd8739ae039)(5000),
2120
+ // 20 second tmeout on all requests, same as react-auth
2121
+ signal: (0, $972f0079ffedc5b0$export$2e2bcd8739ae039)(20000),
2116
2122
  headers: headers,
2117
2123
  credentials: "include"
2118
2124
  };
@@ -2165,40 +2171,70 @@ class $83ff42e2a0f1e24a$export$9e80c3751b841788 {
2165
2171
  *
2166
2172
  * Returns a promise that resolves to the response of the session refresh
2167
2173
  */ async refreshSession() {
2168
- const refresh_token = await this.session.getRefreshToken() ?? undefined;
2174
+ const refreshToken = await this.session.getRefreshToken() ?? undefined;
2175
+ // Use the refresh token as the cache key, if there is no stored token
2176
+ // (i.e. the current app is using cookies) then we use a hardcoded cache key.
2177
+ const key = refreshToken ?? "key";
2178
+ const cached = this.#cache.get(key);
2179
+ if (cached) return await cached;
2180
+ const promise = this.#refreshSession(refreshToken);
2181
+ this.#cache.set(key, promise);
2182
+ try {
2183
+ return await promise;
2184
+ } catch (e) {
2185
+ throw e;
2186
+ } finally{
2187
+ this.#cache.delete(key);
2188
+ }
2189
+ }
2190
+ /**
2191
+ * Private internals of refresh session. Allows us to cache the request higher up
2192
+ * the callstack while separating the actual refresh logic.
2193
+ */ async #refreshSession(refreshToken) {
2169
2194
  try {
2170
2195
  const res = await this.fetch((0, $kxB2R$refreshSession), {
2171
2196
  body: {
2172
- refresh_token: refresh_token
2197
+ refresh_token: refreshToken
2173
2198
  },
2174
2199
  options: {
2175
2200
  onRequest: this.beforeRequestWithoutRefresh.bind(this)
2176
2201
  }
2177
2202
  });
2203
+ // In some cases we get a PartialAuthenticatedView which contains the
2204
+ // user object but no tokens. On our clients we want to treat this as
2205
+ // a logged out state so we throw this error and handle it similar to
2206
+ // a network error.
2207
+ if (!res.token) throw new Error("missing_or_invalid_token");
2178
2208
  this.session.storeToken(res.token);
2179
2209
  this.session.storeRefreshToken(res.refresh_token);
2180
2210
  this.callbacks?.setUser(res.user);
2181
2211
  return res;
2182
2212
  } catch (error) {
2183
- if ($83ff42e2a0f1e24a$var$isAuthError(error) && error.code === "missing_or_invalid_token") // If session cannot be refreshed with current refreshToken, clear local auth state
2184
- // otherwise this will result in a loop that is only escapable by clearing storage in userland
2185
- this.session.destroyLocalState();
2213
+ if ($83ff42e2a0f1e24a$var$isAuthError(error) && error.code === "missing_or_invalid_token") {
2214
+ // If session cannot be refreshed with current refreshToken, clear local auth state
2215
+ // otherwise this will result in a loop that is only escapable by clearing storage in userland
2216
+ this.session.destroyLocalState();
2217
+ this.callbacks?.setUser(null);
2218
+ } else if (error instanceof Error && error.message === "missing_or_invalid_token") {
2219
+ // Handle when this error is throw explicitly above
2220
+ this.session.destroyLocalState();
2221
+ this.callbacks?.setUser(null);
2222
+ }
2186
2223
  throw error;
2187
2224
  }
2188
2225
  }
2189
2226
  async getAccessToken() {
2190
- const [existingToken, refreshCreds, activeToken] = await Promise.all([
2227
+ const [token, refreshToken] = await Promise.all([
2191
2228
  this.session.getToken(),
2192
- this.session.hasRefreshCredentials(),
2193
- this.session.hasActiveToken()
2229
+ this.session.getRefreshToken()
2194
2230
  ]);
2195
- if (existingToken && !activeToken && refreshCreds) try {
2231
+ if (!this.session.tokenIsActive(token) && this.session.hasRefreshCredentials(token, refreshToken)) try {
2196
2232
  const { token: token } = await this.refreshSession();
2197
2233
  return token;
2198
2234
  } catch (error) {
2199
2235
  return null;
2200
2236
  }
2201
- return existingToken;
2237
+ return token;
2202
2238
  }
2203
2239
  }
2204
2240
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@privy-io/js-sdk-core",
3
- "version": "0.8.3",
3
+ "version": "0.8.4",
4
4
  "description": "Vanilla JS client for the Privy Auth API",
5
5
  "keywords": [
6
6
  "authentication",