@privy-io/js-sdk-core 0.4.0 → 0.5.0-beta-20231017003207

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.
package/README.md CHANGED
@@ -40,6 +40,7 @@ const response = await wallet.request({
40
40
  ],
41
41
  });
42
42
 
43
+ // create a viem client from the privy embedded wallet
43
44
  const viemWalletClient = createWalletClient({
44
45
  chain: mainnet,
45
46
  transport: custom(wallet),
package/dist/index.d.ts CHANGED
@@ -1,10 +1,10 @@
1
1
  import { OAuthProviderType } from "@privy-io/public-api";
2
2
  import EventEmitter from "eventemitter3";
3
- interface Storage {
4
- get(key: string): unknown;
3
+ export interface Storage {
4
+ get(key: string): unknown | Promise<unknown>;
5
5
  put(key: string, value: unknown): void;
6
6
  del(key: string): void;
7
- getKeys(): string[];
7
+ getKeys(): string[] | Promise<string[]>;
8
8
  }
9
9
  declare class CustomProviderApi {
10
10
  #private;
@@ -264,6 +264,7 @@ declare class ProviderRpcError extends PrivyError {
264
264
  readonly data?: unknown;
265
265
  constructor(message: string, code: number, data?: unknown);
266
266
  }
267
+ export function errorIndicatesRecoveryIsNeeded(error: unknown): boolean;
267
268
  type ProviderConnectInfo = {
268
269
  chainId: string;
269
270
  };
@@ -353,8 +354,7 @@ type PrivyOptions = {
353
354
  embeddedWalletMessagePoster?: EmbeddedWalletMessagePoster;
354
355
  };
355
356
  /**
356
- * Class definition for `Privy`
357
- * TODO: need doc pass
357
+ * Privy API Client SDK
358
358
  */
359
359
  declare class Privy {
360
360
  #private;
@@ -375,7 +375,7 @@ declare class Privy {
375
375
  setMessagePoster(poster: EmbeddedWalletMessagePoster): void;
376
376
  }
377
377
  export class LocalStorage implements Storage {
378
- get(key: string): any;
378
+ get(key: string): Promise<any>;
379
379
  put(key: string, val: unknown): void;
380
380
  del(key: string): void;
381
381
  getKeys(): string[];
@@ -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/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/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,"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 {PrivyEmbeddedWalletErrorCode} 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/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/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,"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
@@ -39,6 +39,7 @@ $parcel$export(module.exports, "default", function () { return $af690e564931f5d7
39
39
  $parcel$export(module.exports, "LocalStorage", function () { return $0272941682c7469a$export$19fffca37ef3e106; });
40
40
  $parcel$export(module.exports, "InMemoryCache", function () { return $bd1b2bb0e0f7eac2$export$467265324939f47f; });
41
41
  $parcel$export(module.exports, "PrivyEmbeddedWalletErrorCode", function () { return $78157d361a638447$export$4c2ccc1f429bf31; });
42
+ $parcel$export(module.exports, "errorIndicatesRecoveryIsNeeded", function () { return $78157d361a638447$export$8e5517a02da6043; });
42
43
 
43
44
 
44
45
 
@@ -63,6 +64,7 @@ class $1f739692461effaf$export$2e2bcd8739ae039 {
63
64
  });
64
65
  this.#privyInternal.session.storeToken(res.token);
65
66
  this.#privyInternal.session.storeRefreshToken(res.refresh_token);
67
+ this.#privyInternal.callbacks?.setUser(res.user);
66
68
  return res;
67
69
  }
68
70
  }
@@ -105,6 +107,7 @@ class $1f21db1ab6fece0e$export$2e2bcd8739ae039 {
105
107
  });
106
108
  this.#privyInternal.session.storeToken(res.token);
107
109
  this.#privyInternal.session.storeRefreshToken(res.refresh_token);
110
+ this.#privyInternal.callbacks?.setUser(res.user);
108
111
  return res;
109
112
  }
110
113
  /**
@@ -113,19 +116,23 @@ class $1f21db1ab6fece0e$export$2e2bcd8739ae039 {
113
116
  * @param email The email address that the one time code was sent to
114
117
  * @param code The one time code
115
118
  */ async linkWithCode(email, code) {
116
- return this.#privyInternal.fetch((0, $bwzhE$privyiopublicapi.passwordlessLink), {
119
+ const res = await this.#privyInternal.fetch((0, $bwzhE$privyiopublicapi.passwordlessLink), {
117
120
  body: {
118
121
  email: email,
119
122
  code: code
120
123
  }
121
124
  });
125
+ this.#privyInternal.callbacks?.setUser(res);
126
+ return res;
122
127
  }
123
128
  async unlink(email) {
124
- return this.#privyInternal.fetch((0, $bwzhE$privyiopublicapi.passwordlessUnlink), {
129
+ const res = await this.#privyInternal.fetch((0, $bwzhE$privyiopublicapi.passwordlessUnlink), {
125
130
  body: {
126
131
  address: email
127
132
  }
128
133
  });
134
+ this.#privyInternal.callbacks?.setUser(res);
135
+ return res;
129
136
  }
130
137
  }
131
138
 
@@ -168,6 +175,7 @@ class $beeb9c2819ecb256$export$2e2bcd8739ae039 {
168
175
  });
169
176
  this.#privyInternal.session.storeToken(res.token);
170
177
  this.#privyInternal.session.storeRefreshToken(res.refresh_token);
178
+ this.#privyInternal.callbacks?.setUser(res.user);
171
179
  return res;
172
180
  }
173
181
  /**
@@ -176,12 +184,14 @@ class $beeb9c2819ecb256$export$2e2bcd8739ae039 {
176
184
  * @param authorizationCode The code generated by the authorization server
177
185
  * @param stateCode The state value initially set in the request by Privy to the authorization server
178
186
  */ async linkWithCode(authorizationCode, stateCode) {
179
- return this.#privyInternal.fetch((0, $bwzhE$privyiopublicapi.linkOAuthAccount), {
187
+ const res = await this.#privyInternal.fetch((0, $bwzhE$privyiopublicapi.linkOAuthAccount), {
180
188
  body: {
181
189
  authorization_code: authorizationCode,
182
190
  state_code: stateCode
183
191
  }
184
192
  });
193
+ this.#privyInternal.callbacks?.setUser(res);
194
+ return res;
185
195
  }
186
196
  /**
187
197
  * Un-links an OAuth account from an existing user
@@ -189,12 +199,14 @@ class $beeb9c2819ecb256$export$2e2bcd8739ae039 {
189
199
  * @param provider The OAuth provider
190
200
  * @param subject The subject of the OAuth account, usually an email or username
191
201
  */ async unlink(provider, subject) {
192
- return this.#privyInternal.fetch((0, $bwzhE$privyiopublicapi.unlinkOAuthAccount), {
202
+ const res = await this.#privyInternal.fetch((0, $bwzhE$privyiopublicapi.unlinkOAuthAccount), {
193
203
  body: {
194
204
  provider: provider,
195
205
  subject: subject
196
206
  }
197
207
  });
208
+ this.#privyInternal.callbacks?.setUser(res);
209
+ return res;
198
210
  }
199
211
  }
200
212
 
@@ -236,6 +248,7 @@ class $488e97f499cf9159$export$2e2bcd8739ae039 {
236
248
  });
237
249
  this.#privyInternal.session.storeToken(res.token);
238
250
  this.#privyInternal.session.storeRefreshToken(res.refresh_token);
251
+ this.#privyInternal.callbacks?.setUser(res.user);
239
252
  return res;
240
253
  }
241
254
  /**
@@ -244,19 +257,23 @@ class $488e97f499cf9159$export$2e2bcd8739ae039 {
244
257
  * @param phoneNumber The phone number that the one time code was sent to
245
258
  * @param code The one time code
246
259
  */ async linkWithCode(phoneNumber, code) {
247
- return this.#privyInternal.fetch((0, $bwzhE$privyiopublicapi.passwordlessSmsLink), {
260
+ const res = await this.#privyInternal.fetch((0, $bwzhE$privyiopublicapi.passwordlessSmsLink), {
248
261
  body: {
249
262
  phoneNumber: phoneNumber,
250
263
  code: code
251
264
  }
252
265
  });
266
+ this.#privyInternal.callbacks?.setUser(res);
267
+ return res;
253
268
  }
254
269
  async unlink(phoneNumber) {
255
- return this.#privyInternal.fetch((0, $bwzhE$privyiopublicapi.passwordlessSmsUnlink), {
270
+ const res = await this.#privyInternal.fetch((0, $bwzhE$privyiopublicapi.passwordlessSmsUnlink), {
256
271
  body: {
257
272
  phoneNumber: phoneNumber
258
273
  }
259
274
  });
275
+ this.#privyInternal.callbacks?.setUser(res);
276
+ return res;
260
277
  }
261
278
  }
262
279
 
@@ -278,9 +295,10 @@ class $98111b9dfa4b03f7$export$2e2bcd8739ae039 {
278
295
  * Logs the current user out.
279
296
  */ async logout() {
280
297
  try {
298
+ const refresh_token = await this.#privyInternal.session.getRefreshToken() ?? undefined;
281
299
  await this.#privyInternal.fetch((0, $bwzhE$privyiopublicapi.logout), {
282
300
  body: {
283
- refresh_token: this.#privyInternal.session.refreshToken ?? undefined
301
+ refresh_token: refresh_token
284
302
  }
285
303
  });
286
304
  } catch (e) {
@@ -289,6 +307,7 @@ class $98111b9dfa4b03f7$export$2e2bcd8739ae039 {
289
307
  }
290
308
  // Destroy the local auth state
291
309
  this.#privyInternal.session.destroyLocalState();
310
+ this.#privyInternal.callbacks?.setUser(null);
292
311
  }
293
312
  }
294
313
 
@@ -1620,6 +1639,7 @@ class $99761f88b99b6cb6$export$2e2bcd8739ae039 {
1620
1639
  accessToken: accessToken,
1621
1640
  recoveryPassword: password
1622
1641
  });
1642
+ if (this.#privyInternal.callbacks?.setUser) await this.#privyInternal.refreshSession();
1623
1643
  if (!address) throw new Error("Failed to create wallet");
1624
1644
  return new (0, $a983a2431488eb50$export$26f7ada50d209c97)({
1625
1645
  address: address,
@@ -1760,7 +1780,7 @@ class $99761f88b99b6cb6$export$2e2bcd8739ae039 {
1760
1780
 
1761
1781
 
1762
1782
  var $af98a8a573bb7c25$exports = {};
1763
- $af98a8a573bb7c25$exports = JSON.parse('{"name":"@privy-io/js-sdk-core","version":"0.4.0","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","prepublishOnly":"npm run clean && npm run build","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":"*","@tsconfig/node16-strictest-esm":"^1.0.3","@types/text-encoding":"^0.0.37","parcel":"^2.9.3"},"dependencies":{"@ethersproject/providers":"^5.7.2","@privy-io/public-api":"*","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"}}');
1783
+ $af98a8a573bb7c25$exports = JSON.parse('{"name":"@privy-io/js-sdk-core","version":"0.5.0-beta-20231017003207","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","prepublishOnly":"npm run clean && npm run build","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":"*","@tsconfig/node16-strictest-esm":"^1.0.3","@types/text-encoding":"^0.0.37","parcel":"^2.9.3"},"dependencies":{"@ethersproject/providers":"^5.7.2","@privy-io/public-api":"*","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"}}');
1764
1784
 
1765
1785
 
1766
1786
 
@@ -1830,9 +1850,9 @@ class $4a5ceffc04a8e7b0$export$1fb4852a55678982 {
1830
1850
  set isUsingServerCookies(isUsingServerCookies) {
1831
1851
  this.#isUsingServerCookies = isUsingServerCookies;
1832
1852
  }
1833
- get token() {
1853
+ async getToken() {
1854
+ const token = await this.#storage.get($4a5ceffc04a8e7b0$var$TOKEN_STORAGE_KEY);
1834
1855
  try {
1835
- const token = this.#storage.get($4a5ceffc04a8e7b0$var$TOKEN_STORAGE_KEY);
1836
1856
  if (typeof token === "string") // This should throw error if the token is not a JWT
1837
1857
  return new (0, $4c28dd58a3e1b414$export$50792b0e93539fde)(token).value;
1838
1858
  else return null;
@@ -1842,9 +1862,9 @@ class $4a5ceffc04a8e7b0$export$1fb4852a55678982 {
1842
1862
  return null;
1843
1863
  }
1844
1864
  }
1845
- get refreshToken() {
1865
+ async getRefreshToken() {
1846
1866
  try {
1847
- const refreshToken = this.#storage.get($4a5ceffc04a8e7b0$var$REFRESH_TOKEN_STORAGE_KEY);
1867
+ const refreshToken = await this.#storage.get($4a5ceffc04a8e7b0$var$REFRESH_TOKEN_STORAGE_KEY);
1848
1868
  return typeof refreshToken === "string" ? refreshToken : null;
1849
1869
  } catch (error) {
1850
1870
  console.error(error);
@@ -1852,9 +1872,9 @@ class $4a5ceffc04a8e7b0$export$1fb4852a55678982 {
1852
1872
  return null;
1853
1873
  }
1854
1874
  }
1855
- get forkedToken() {
1875
+ async getForkedToken() {
1856
1876
  try {
1857
- const forkedToken = this.#storage.get($4a5ceffc04a8e7b0$var$FORKED_TOKEN_STORAGE_KEY);
1877
+ const forkedToken = await this.#storage.get($4a5ceffc04a8e7b0$var$FORKED_TOKEN_STORAGE_KEY);
1858
1878
  return typeof forkedToken === "string" ? forkedToken : null;
1859
1879
  } catch (error) {
1860
1880
  console.error(error);
@@ -1881,23 +1901,28 @@ class $4a5ceffc04a8e7b0$export$1fb4852a55678982 {
1881
1901
  * 2. Server cookies
1882
1902
  *
1883
1903
  * @returns true if we have what appear to be valid credentials, false otherwise.
1884
- */ hasRefreshCredentials() {
1885
- return this.mightHaveServerCookies || typeof this.token === "string" && typeof this.refreshToken === "string";
1904
+ */ async hasRefreshCredentials() {
1905
+ const [token, refreshToken] = await Promise.all([
1906
+ this.getToken(),
1907
+ this.getRefreshToken()
1908
+ ]);
1909
+ return this.mightHaveServerCookies || typeof token === "string" && typeof refreshToken === "string";
1886
1910
  }
1887
1911
  /**
1888
1912
  * Checks to see if locally we have recovery credentials (forked session token)
1889
1913
  *
1890
1914
  * @returns true if we have what appear to be valid credentials, false otherwise.
1891
- */ hasRecoveryCredentials() {
1892
- return typeof this.forkedToken === "string";
1915
+ */ async hasRecoveryCredentials() {
1916
+ const forkedToken = await this.getForkedToken();
1917
+ return typeof forkedToken === "string";
1893
1918
  }
1894
1919
  /**
1895
1920
  * Checks if the session contains a valid token that is not
1896
1921
  * expired or expiring soon.
1897
1922
  *
1898
1923
  * @returns true if token is considered active, false otherwise.
1899
- */ hasActiveToken() {
1900
- const token = (0, $4c28dd58a3e1b414$export$50792b0e93539fde).parse(this.token);
1924
+ */ async hasActiveToken() {
1925
+ const token = (0, $4c28dd58a3e1b414$export$50792b0e93539fde).parse(await this.getToken());
1901
1926
  return token !== null && !token.isExpired($4a5ceffc04a8e7b0$var$DEFAULT_EXPIRATION_PADDING_IN_SECONDS);
1902
1927
  }
1903
1928
  destroyLocalState() {
@@ -1972,6 +1997,7 @@ class $5945f4703f62befa$export$9e80c3751b841788 {
1972
1997
  this.#storage = o.storage;
1973
1998
  this.#clientId = (0, $bwzhE$uuid.v4)();
1974
1999
  this.#sdkVersion = o.sdkVersion ?? this.#sdkVersion;
2000
+ this.callbacks = o.callbacks;
1975
2001
  this.session = new (0, $4a5ceffc04a8e7b0$export$1fb4852a55678982)({
1976
2002
  storage: this.#storage,
1977
2003
  isUsingServerCookies: false
@@ -2030,8 +2056,8 @@ class $5945f4703f62befa$export$9e80c3751b841788 {
2030
2056
  * This method sets the headers for the fetch request
2031
2057
  * It also sets a timeout for the request
2032
2058
  * @param {Request} request - The request object
2033
- */ beforeRequestWithoutRefresh(request) {
2034
- const token = this.session.token;
2059
+ */ async beforeRequestWithoutRefresh(request) {
2060
+ const token = await this.session.getToken();
2035
2061
  const headers = new Headers(request.headers);
2036
2062
  headers.set("privy-app-id", this.appId);
2037
2063
  headers.set("privy-client", this.#sdkVersion);
@@ -2092,9 +2118,10 @@ class $5945f4703f62befa$export$9e80c3751b841788 {
2092
2118
  *
2093
2119
  * Returns a promise that resolves to the response of the session refresh
2094
2120
  */ async refreshSession() {
2121
+ const refresh_token = await this.session.getRefreshToken() ?? undefined;
2095
2122
  const res = await this.fetch((0, $bwzhE$privyiopublicapi.refreshSession), {
2096
2123
  body: {
2097
- refresh_token: this.session.refreshToken ?? undefined
2124
+ refresh_token: refresh_token
2098
2125
  },
2099
2126
  options: {
2100
2127
  onRequest: this.beforeRequestWithoutRefresh.bind(this)
@@ -2102,12 +2129,17 @@ class $5945f4703f62befa$export$9e80c3751b841788 {
2102
2129
  });
2103
2130
  this.session.storeToken(res.token);
2104
2131
  this.session.storeRefreshToken(res.refresh_token);
2132
+ this.callbacks?.setUser(res.user);
2105
2133
  return res;
2106
2134
  }
2107
2135
  async getAccessToken() {
2108
- const existingToken = this.session.token;
2136
+ const [existingToken, refreshCreds, activeToken] = await Promise.all([
2137
+ this.session.getToken(),
2138
+ this.session.hasRefreshCredentials(),
2139
+ this.session.hasActiveToken()
2140
+ ]);
2109
2141
  // If we have a token and we don't have an active token and we have refresh credentials
2110
- if (existingToken && !this.session.hasActiveToken && this.session.hasRefreshCredentials()) {
2142
+ if (existingToken && !activeToken && refreshCreds) {
2111
2143
  const { token: token } = await this.refreshSession();
2112
2144
  return token;
2113
2145
  }
@@ -2148,7 +2180,7 @@ class $2af0542ababa71ac$export$2e2bcd8739ae039 {
2148
2180
 
2149
2181
 
2150
2182
  class $0272941682c7469a$export$19fffca37ef3e106 {
2151
- get(key) {
2183
+ async get(key) {
2152
2184
  const val = localStorage.getItem(key);
2153
2185
  return val === null ? undefined : JSON.parse(val);
2154
2186
  }
package/dist/index.mjs CHANGED
@@ -31,6 +31,7 @@ class $3d62e2afb9aeeba9$export$2e2bcd8739ae039 {
31
31
  });
32
32
  this.#privyInternal.session.storeToken(res.token);
33
33
  this.#privyInternal.session.storeRefreshToken(res.refresh_token);
34
+ this.#privyInternal.callbacks?.setUser(res.user);
34
35
  return res;
35
36
  }
36
37
  }
@@ -73,6 +74,7 @@ class $740ec7e42dc11c1e$export$2e2bcd8739ae039 {
73
74
  });
74
75
  this.#privyInternal.session.storeToken(res.token);
75
76
  this.#privyInternal.session.storeRefreshToken(res.refresh_token);
77
+ this.#privyInternal.callbacks?.setUser(res.user);
76
78
  return res;
77
79
  }
78
80
  /**
@@ -81,19 +83,23 @@ class $740ec7e42dc11c1e$export$2e2bcd8739ae039 {
81
83
  * @param email The email address that the one time code was sent to
82
84
  * @param code The one time code
83
85
  */ async linkWithCode(email, code) {
84
- return this.#privyInternal.fetch((0, $kxB2R$passwordlessLink), {
86
+ const res = await this.#privyInternal.fetch((0, $kxB2R$passwordlessLink), {
85
87
  body: {
86
88
  email: email,
87
89
  code: code
88
90
  }
89
91
  });
92
+ this.#privyInternal.callbacks?.setUser(res);
93
+ return res;
90
94
  }
91
95
  async unlink(email) {
92
- return this.#privyInternal.fetch((0, $kxB2R$passwordlessUnlink), {
96
+ const res = await this.#privyInternal.fetch((0, $kxB2R$passwordlessUnlink), {
93
97
  body: {
94
98
  address: email
95
99
  }
96
100
  });
101
+ this.#privyInternal.callbacks?.setUser(res);
102
+ return res;
97
103
  }
98
104
  }
99
105
 
@@ -136,6 +142,7 @@ class $3ead2a93a65491e3$export$2e2bcd8739ae039 {
136
142
  });
137
143
  this.#privyInternal.session.storeToken(res.token);
138
144
  this.#privyInternal.session.storeRefreshToken(res.refresh_token);
145
+ this.#privyInternal.callbacks?.setUser(res.user);
139
146
  return res;
140
147
  }
141
148
  /**
@@ -144,12 +151,14 @@ class $3ead2a93a65491e3$export$2e2bcd8739ae039 {
144
151
  * @param authorizationCode The code generated by the authorization server
145
152
  * @param stateCode The state value initially set in the request by Privy to the authorization server
146
153
  */ async linkWithCode(authorizationCode, stateCode) {
147
- return this.#privyInternal.fetch((0, $kxB2R$linkOAuthAccount), {
154
+ const res = await this.#privyInternal.fetch((0, $kxB2R$linkOAuthAccount), {
148
155
  body: {
149
156
  authorization_code: authorizationCode,
150
157
  state_code: stateCode
151
158
  }
152
159
  });
160
+ this.#privyInternal.callbacks?.setUser(res);
161
+ return res;
153
162
  }
154
163
  /**
155
164
  * Un-links an OAuth account from an existing user
@@ -157,12 +166,14 @@ class $3ead2a93a65491e3$export$2e2bcd8739ae039 {
157
166
  * @param provider The OAuth provider
158
167
  * @param subject The subject of the OAuth account, usually an email or username
159
168
  */ async unlink(provider, subject) {
160
- return this.#privyInternal.fetch((0, $kxB2R$unlinkOAuthAccount), {
169
+ const res = await this.#privyInternal.fetch((0, $kxB2R$unlinkOAuthAccount), {
161
170
  body: {
162
171
  provider: provider,
163
172
  subject: subject
164
173
  }
165
174
  });
175
+ this.#privyInternal.callbacks?.setUser(res);
176
+ return res;
166
177
  }
167
178
  }
168
179
 
@@ -204,6 +215,7 @@ class $8a9a5fd5c96f1587$export$2e2bcd8739ae039 {
204
215
  });
205
216
  this.#privyInternal.session.storeToken(res.token);
206
217
  this.#privyInternal.session.storeRefreshToken(res.refresh_token);
218
+ this.#privyInternal.callbacks?.setUser(res.user);
207
219
  return res;
208
220
  }
209
221
  /**
@@ -212,19 +224,23 @@ class $8a9a5fd5c96f1587$export$2e2bcd8739ae039 {
212
224
  * @param phoneNumber The phone number that the one time code was sent to
213
225
  * @param code The one time code
214
226
  */ async linkWithCode(phoneNumber, code) {
215
- return this.#privyInternal.fetch((0, $kxB2R$passwordlessSmsLink), {
227
+ const res = await this.#privyInternal.fetch((0, $kxB2R$passwordlessSmsLink), {
216
228
  body: {
217
229
  phoneNumber: phoneNumber,
218
230
  code: code
219
231
  }
220
232
  });
233
+ this.#privyInternal.callbacks?.setUser(res);
234
+ return res;
221
235
  }
222
236
  async unlink(phoneNumber) {
223
- return this.#privyInternal.fetch((0, $kxB2R$passwordlessSmsUnlink), {
237
+ const res = await this.#privyInternal.fetch((0, $kxB2R$passwordlessSmsUnlink), {
224
238
  body: {
225
239
  phoneNumber: phoneNumber
226
240
  }
227
241
  });
242
+ this.#privyInternal.callbacks?.setUser(res);
243
+ return res;
228
244
  }
229
245
  }
230
246
 
@@ -246,9 +262,10 @@ class $a712a7384002dbf3$export$2e2bcd8739ae039 {
246
262
  * Logs the current user out.
247
263
  */ async logout() {
248
264
  try {
265
+ const refresh_token = await this.#privyInternal.session.getRefreshToken() ?? undefined;
249
266
  await this.#privyInternal.fetch((0, $kxB2R$logout), {
250
267
  body: {
251
- refresh_token: this.#privyInternal.session.refreshToken ?? undefined
268
+ refresh_token: refresh_token
252
269
  }
253
270
  });
254
271
  } catch (e) {
@@ -257,6 +274,7 @@ class $a712a7384002dbf3$export$2e2bcd8739ae039 {
257
274
  }
258
275
  // Destroy the local auth state
259
276
  this.#privyInternal.session.destroyLocalState();
277
+ this.#privyInternal.callbacks?.setUser(null);
260
278
  }
261
279
  }
262
280
 
@@ -1588,6 +1606,7 @@ class $a3295537bbaaa670$export$2e2bcd8739ae039 {
1588
1606
  accessToken: accessToken,
1589
1607
  recoveryPassword: password
1590
1608
  });
1609
+ if (this.#privyInternal.callbacks?.setUser) await this.#privyInternal.refreshSession();
1591
1610
  if (!address) throw new Error("Failed to create wallet");
1592
1611
  return new (0, $8efc598a5848a0f4$export$26f7ada50d209c97)({
1593
1612
  address: address,
@@ -1728,7 +1747,7 @@ class $a3295537bbaaa670$export$2e2bcd8739ae039 {
1728
1747
 
1729
1748
 
1730
1749
  var $53a9b3651331d972$exports = {};
1731
- $53a9b3651331d972$exports = JSON.parse('{"name":"@privy-io/js-sdk-core","version":"0.4.0","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","prepublishOnly":"npm run clean && npm run build","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":"*","@tsconfig/node16-strictest-esm":"^1.0.3","@types/text-encoding":"^0.0.37","parcel":"^2.9.3"},"dependencies":{"@ethersproject/providers":"^5.7.2","@privy-io/public-api":"*","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"}}');
1750
+ $53a9b3651331d972$exports = JSON.parse('{"name":"@privy-io/js-sdk-core","version":"0.5.0-beta-20231017003207","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","prepublishOnly":"npm run clean && npm run build","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":"*","@tsconfig/node16-strictest-esm":"^1.0.3","@types/text-encoding":"^0.0.37","parcel":"^2.9.3"},"dependencies":{"@ethersproject/providers":"^5.7.2","@privy-io/public-api":"*","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"}}');
1732
1751
 
1733
1752
 
1734
1753
 
@@ -1798,9 +1817,9 @@ class $0b6eb30d38bf8477$export$1fb4852a55678982 {
1798
1817
  set isUsingServerCookies(isUsingServerCookies) {
1799
1818
  this.#isUsingServerCookies = isUsingServerCookies;
1800
1819
  }
1801
- get token() {
1820
+ async getToken() {
1821
+ const token = await this.#storage.get($0b6eb30d38bf8477$var$TOKEN_STORAGE_KEY);
1802
1822
  try {
1803
- const token = this.#storage.get($0b6eb30d38bf8477$var$TOKEN_STORAGE_KEY);
1804
1823
  if (typeof token === "string") // This should throw error if the token is not a JWT
1805
1824
  return new (0, $efa0c2e06cf7cca2$export$50792b0e93539fde)(token).value;
1806
1825
  else return null;
@@ -1810,9 +1829,9 @@ class $0b6eb30d38bf8477$export$1fb4852a55678982 {
1810
1829
  return null;
1811
1830
  }
1812
1831
  }
1813
- get refreshToken() {
1832
+ async getRefreshToken() {
1814
1833
  try {
1815
- const refreshToken = this.#storage.get($0b6eb30d38bf8477$var$REFRESH_TOKEN_STORAGE_KEY);
1834
+ const refreshToken = await this.#storage.get($0b6eb30d38bf8477$var$REFRESH_TOKEN_STORAGE_KEY);
1816
1835
  return typeof refreshToken === "string" ? refreshToken : null;
1817
1836
  } catch (error) {
1818
1837
  console.error(error);
@@ -1820,9 +1839,9 @@ class $0b6eb30d38bf8477$export$1fb4852a55678982 {
1820
1839
  return null;
1821
1840
  }
1822
1841
  }
1823
- get forkedToken() {
1842
+ async getForkedToken() {
1824
1843
  try {
1825
- const forkedToken = this.#storage.get($0b6eb30d38bf8477$var$FORKED_TOKEN_STORAGE_KEY);
1844
+ const forkedToken = await this.#storage.get($0b6eb30d38bf8477$var$FORKED_TOKEN_STORAGE_KEY);
1826
1845
  return typeof forkedToken === "string" ? forkedToken : null;
1827
1846
  } catch (error) {
1828
1847
  console.error(error);
@@ -1849,23 +1868,28 @@ class $0b6eb30d38bf8477$export$1fb4852a55678982 {
1849
1868
  * 2. Server cookies
1850
1869
  *
1851
1870
  * @returns true if we have what appear to be valid credentials, false otherwise.
1852
- */ hasRefreshCredentials() {
1853
- return this.mightHaveServerCookies || typeof this.token === "string" && typeof this.refreshToken === "string";
1871
+ */ async hasRefreshCredentials() {
1872
+ const [token, refreshToken] = await Promise.all([
1873
+ this.getToken(),
1874
+ this.getRefreshToken()
1875
+ ]);
1876
+ return this.mightHaveServerCookies || typeof token === "string" && typeof refreshToken === "string";
1854
1877
  }
1855
1878
  /**
1856
1879
  * Checks to see if locally we have recovery credentials (forked session token)
1857
1880
  *
1858
1881
  * @returns true if we have what appear to be valid credentials, false otherwise.
1859
- */ hasRecoveryCredentials() {
1860
- return typeof this.forkedToken === "string";
1882
+ */ async hasRecoveryCredentials() {
1883
+ const forkedToken = await this.getForkedToken();
1884
+ return typeof forkedToken === "string";
1861
1885
  }
1862
1886
  /**
1863
1887
  * Checks if the session contains a valid token that is not
1864
1888
  * expired or expiring soon.
1865
1889
  *
1866
1890
  * @returns true if token is considered active, false otherwise.
1867
- */ hasActiveToken() {
1868
- const token = (0, $efa0c2e06cf7cca2$export$50792b0e93539fde).parse(this.token);
1891
+ */ async hasActiveToken() {
1892
+ const token = (0, $efa0c2e06cf7cca2$export$50792b0e93539fde).parse(await this.getToken());
1869
1893
  return token !== null && !token.isExpired($0b6eb30d38bf8477$var$DEFAULT_EXPIRATION_PADDING_IN_SECONDS);
1870
1894
  }
1871
1895
  destroyLocalState() {
@@ -1940,6 +1964,7 @@ class $83ff42e2a0f1e24a$export$9e80c3751b841788 {
1940
1964
  this.#storage = o.storage;
1941
1965
  this.#clientId = (0, $kxB2R$v4)();
1942
1966
  this.#sdkVersion = o.sdkVersion ?? this.#sdkVersion;
1967
+ this.callbacks = o.callbacks;
1943
1968
  this.session = new (0, $0b6eb30d38bf8477$export$1fb4852a55678982)({
1944
1969
  storage: this.#storage,
1945
1970
  isUsingServerCookies: false
@@ -1998,8 +2023,8 @@ class $83ff42e2a0f1e24a$export$9e80c3751b841788 {
1998
2023
  * This method sets the headers for the fetch request
1999
2024
  * It also sets a timeout for the request
2000
2025
  * @param {Request} request - The request object
2001
- */ beforeRequestWithoutRefresh(request) {
2002
- const token = this.session.token;
2026
+ */ async beforeRequestWithoutRefresh(request) {
2027
+ const token = await this.session.getToken();
2003
2028
  const headers = new Headers(request.headers);
2004
2029
  headers.set("privy-app-id", this.appId);
2005
2030
  headers.set("privy-client", this.#sdkVersion);
@@ -2060,9 +2085,10 @@ class $83ff42e2a0f1e24a$export$9e80c3751b841788 {
2060
2085
  *
2061
2086
  * Returns a promise that resolves to the response of the session refresh
2062
2087
  */ async refreshSession() {
2088
+ const refresh_token = await this.session.getRefreshToken() ?? undefined;
2063
2089
  const res = await this.fetch((0, $kxB2R$refreshSession), {
2064
2090
  body: {
2065
- refresh_token: this.session.refreshToken ?? undefined
2091
+ refresh_token: refresh_token
2066
2092
  },
2067
2093
  options: {
2068
2094
  onRequest: this.beforeRequestWithoutRefresh.bind(this)
@@ -2070,12 +2096,17 @@ class $83ff42e2a0f1e24a$export$9e80c3751b841788 {
2070
2096
  });
2071
2097
  this.session.storeToken(res.token);
2072
2098
  this.session.storeRefreshToken(res.refresh_token);
2099
+ this.callbacks?.setUser(res.user);
2073
2100
  return res;
2074
2101
  }
2075
2102
  async getAccessToken() {
2076
- const existingToken = this.session.token;
2103
+ const [existingToken, refreshCreds, activeToken] = await Promise.all([
2104
+ this.session.getToken(),
2105
+ this.session.hasRefreshCredentials(),
2106
+ this.session.hasActiveToken()
2107
+ ]);
2077
2108
  // If we have a token and we don't have an active token and we have refresh credentials
2078
- if (existingToken && !this.session.hasActiveToken && this.session.hasRefreshCredentials()) {
2109
+ if (existingToken && !activeToken && refreshCreds) {
2079
2110
  const { token: token } = await this.refreshSession();
2080
2111
  return token;
2081
2112
  }
@@ -2116,7 +2147,7 @@ class $a43e642a0de69b32$export$2e2bcd8739ae039 {
2116
2147
 
2117
2148
 
2118
2149
  class $451b924a20bb5457$export$19fffca37ef3e106 {
2119
- get(key) {
2150
+ async get(key) {
2120
2151
  const val = localStorage.getItem(key);
2121
2152
  return val === null ? undefined : JSON.parse(val);
2122
2153
  }
@@ -2161,4 +2192,4 @@ globalThis.TextEncoder ??= (0, $kxB2R$TextEncoder);
2161
2192
  var $72afd1f4960afa4d$export$2e2bcd8739ae039 = (0, $a43e642a0de69b32$export$2e2bcd8739ae039);
2162
2193
 
2163
2194
 
2164
- export {$72afd1f4960afa4d$export$2e2bcd8739ae039 as default, $451b924a20bb5457$export$19fffca37ef3e106 as LocalStorage, $94c28b2caada9967$export$467265324939f47f as InMemoryCache, $2c414ad78ae810d4$export$4c2ccc1f429bf31 as PrivyEmbeddedWalletErrorCode};
2195
+ export {$72afd1f4960afa4d$export$2e2bcd8739ae039 as default, $451b924a20bb5457$export$19fffca37ef3e106 as LocalStorage, $94c28b2caada9967$export$467265324939f47f as InMemoryCache, $2c414ad78ae810d4$export$4c2ccc1f429bf31 as PrivyEmbeddedWalletErrorCode, $2c414ad78ae810d4$export$8e5517a02da6043 as errorIndicatesRecoveryIsNeeded};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@privy-io/js-sdk-core",
3
- "version": "0.4.0",
3
+ "version": "0.5.0-beta-20231017003207",
4
4
  "description": "Vanilla JS client for the Privy Auth API",
5
5
  "keywords": [
6
6
  "authentication",