@privy-io/js-sdk-core 0.9.3 → 0.9.4-beta-20240118055836

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/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { OAuthProviderType } from "@privy-io/public-api";
2
1
  import EventEmitter from "eventemitter3";
2
+ import { OAuthProviderType } from "@privy-io/public-api";
3
3
  import { PrivyEthereumEmbeddedWalletAccount } from "@privy-io/public-api/schemas";
4
4
  export interface Storage {
5
5
  get(key: string): unknown | Promise<unknown>;
@@ -7,120 +7,6 @@ export interface Storage {
7
7
  del(key: string): void | Promise<void>;
8
8
  getKeys(): string[] | Promise<string[]>;
9
9
  }
10
- declare class CustomProviderApi {
11
- #private;
12
- /**
13
- * Logs a user in via a custom JWT from another (non-Privy) service
14
- *
15
- * @param token The JWT from the non-Privy service
16
- */
17
- syncWithToken(token: string): Promise<import("@privy-io/public-api").PrivyAuthenticatedUser>;
18
- }
19
- declare class EmailApi {
20
- #private;
21
- /**
22
- * Sends a one time login code to a user's email address
23
- *
24
- * @param email The email address to send the one time login code
25
- * @param token A CAPTCHA token
26
- */
27
- sendCode(email: string, token?: string): Promise<import("@privy-io/public-api").PrivySuccessObject>;
28
- /**
29
- * Logs a user in via an email address and one time code
30
- *
31
- * @param email The email address that the one time code was sent to
32
- * @param code The one time code
33
- */
34
- loginWithCode(email: string, code: string): Promise<import("@privy-io/public-api").PrivyAuthenticatedUser>;
35
- /**
36
- * Links an email adress to an existing user
37
- *
38
- * @param email The email address that the one time code was sent to
39
- * @param code The one time code
40
- */
41
- linkWithCode(email: string, code: string): Promise<import("@privy-io/public-api").PrivyUser>;
42
- unlink(email: string): Promise<import("@privy-io/public-api").PrivyUser>;
43
- }
44
- declare class OAuthApi {
45
- #private;
46
- /**
47
- * Starts an OAuth flow with a specific provider
48
- * Sends a one time login code to a user's email address
49
- *
50
- * @param provider The OAuth provider
51
- * @param redirectURI The URL to redirect to after a successful OAuth flow
52
- */
53
- generateURL(provider: OAuthProviderType, redirectURI: string): Promise<import("@privy-io/public-api").PrivyOAuthInitResponse>;
54
- /**
55
- * Logs a user in via successfull OAuth flow codes
56
- *
57
- * @param authorizationCode The code generated by the authorization server
58
- * @param stateCode The state value initially set in the request by Privy to the authorization server
59
- */
60
- loginWithCode(authorizationCode: string, stateCode: string): Promise<import("@privy-io/public-api").PrivyAuthenticatedUser>;
61
- /**
62
- * Links an OAuth account to an existing user
63
- *
64
- * @param authorizationCode The code generated by the authorization server
65
- * @param stateCode The state value initially set in the request by Privy to the authorization server
66
- */
67
- linkWithCode(authorizationCode: string, stateCode: string): Promise<import("@privy-io/public-api").PrivyUser>;
68
- /**
69
- * Un-links an OAuth account from an existing user
70
- *
71
- * @param provider The OAuth provider
72
- * @param subject The subject of the OAuth account, usually an email or username
73
- */
74
- unlink(provider: OAuthProviderType, subject: string): Promise<import("@privy-io/public-api").PrivyUser>;
75
- }
76
- declare class PhoneApi {
77
- #private;
78
- /**
79
- * Sends a one time login code to a user's phone number via sms
80
- *
81
- * @param phoneNumber The phone number to send the one time login code
82
- * @param token A CAPTCHA token
83
- */
84
- sendCode(phoneNumber: string, token?: string): Promise<import("@privy-io/public-api").PrivySuccessObject>;
85
- /**
86
- * Logs a user in via a phone number and one time code
87
- *
88
- * @param phoneNumber The phone number that the one time code was sent to
89
- * @param code The one time code
90
- */
91
- loginWithCode(phoneNumber: string, code: string): Promise<import("@privy-io/public-api").PrivyAuthenticatedUser>;
92
- /**
93
- * Links a phone number to an existing user
94
- *
95
- * @param phoneNumber The phone number that the one time code was sent to
96
- * @param code The one time code
97
- */
98
- linkWithCode(phoneNumber: string, code: string): Promise<import("@privy-io/public-api").PrivyUser>;
99
- unlink(phoneNumber: string): Promise<import("@privy-io/public-api").PrivyUser>;
100
- }
101
- declare class AuthApi {
102
- #private;
103
- /**
104
- * APIs for login with a custom JWT
105
- */
106
- readonly customProvider: CustomProviderApi;
107
- /**
108
- * APIs for passwordless login with sms
109
- */
110
- readonly phone: PhoneApi;
111
- /**
112
- * APIs for passwordless login with email
113
- */
114
- readonly email: EmailApi;
115
- /**
116
- * APIs for login with OAuth
117
- */
118
- readonly oauth: OAuthApi;
119
- /**
120
- * Logs the current user out.
121
- */
122
- logout(): Promise<void>;
123
- }
124
10
  /**
125
11
  * These types are fully compatible with WAGMI chain types, in case
126
12
  * we need interop in the future.
@@ -358,6 +244,122 @@ declare class EmbeddedWalletProvider extends EventEmitter implements EIP1193Prov
358
244
  request(request: RequestArguments): Promise<any>;
359
245
  toJSON(): string;
360
246
  }
247
+ export type PrivyEmbeddedWalletProvider = EmbeddedWalletProvider;
248
+ export type LogLevel = 'ERROR' | 'WARN' | 'INFO' | 'DEBUG';
249
+ declare class CustomProviderApi {
250
+ #private;
251
+ /**
252
+ * Logs a user in via a custom JWT from another (non-Privy) service
253
+ *
254
+ * @param token The JWT from the non-Privy service
255
+ */
256
+ syncWithToken(token: string): Promise<import("@privy-io/public-api").PrivyAuthenticatedUser>;
257
+ }
258
+ declare class EmailApi {
259
+ #private;
260
+ /**
261
+ * Sends a one time login code to a user's email address
262
+ *
263
+ * @param email The email address to send the one time login code
264
+ * @param token A CAPTCHA token
265
+ */
266
+ sendCode(email: string, token?: string): Promise<import("@privy-io/public-api").PrivySuccessObject>;
267
+ /**
268
+ * Logs a user in via an email address and one time code
269
+ *
270
+ * @param email The email address that the one time code was sent to
271
+ * @param code The one time code
272
+ */
273
+ loginWithCode(email: string, code: string): Promise<import("@privy-io/public-api").PrivyAuthenticatedUser>;
274
+ /**
275
+ * Links an email adress to an existing user
276
+ *
277
+ * @param email The email address that the one time code was sent to
278
+ * @param code The one time code
279
+ */
280
+ linkWithCode(email: string, code: string): Promise<import("@privy-io/public-api").PrivyUser>;
281
+ unlink(email: string): Promise<import("@privy-io/public-api").PrivyUser>;
282
+ }
283
+ declare class OAuthApi {
284
+ #private;
285
+ /**
286
+ * Starts an OAuth flow with a specific provider
287
+ * Sends a one time login code to a user's email address
288
+ *
289
+ * @param provider The OAuth provider
290
+ * @param redirectURI The URL to redirect to after a successful OAuth flow
291
+ */
292
+ generateURL(provider: OAuthProviderType, redirectURI: string): Promise<import("@privy-io/public-api").PrivyOAuthInitResponse>;
293
+ /**
294
+ * Logs a user in via successfull OAuth flow codes
295
+ *
296
+ * @param authorizationCode The code generated by the authorization server
297
+ * @param stateCode The state value initially set in the request by Privy to the authorization server
298
+ */
299
+ loginWithCode(authorizationCode: string, stateCode: string): Promise<import("@privy-io/public-api").PrivyAuthenticatedUser>;
300
+ /**
301
+ * Links an OAuth account to an existing user
302
+ *
303
+ * @param authorizationCode The code generated by the authorization server
304
+ * @param stateCode The state value initially set in the request by Privy to the authorization server
305
+ */
306
+ linkWithCode(authorizationCode: string, stateCode: string): Promise<import("@privy-io/public-api").PrivyUser>;
307
+ /**
308
+ * Un-links an OAuth account from an existing user
309
+ *
310
+ * @param provider The OAuth provider
311
+ * @param subject The subject of the OAuth account, usually an email or username
312
+ */
313
+ unlink(provider: OAuthProviderType, subject: string): Promise<import("@privy-io/public-api").PrivyUser>;
314
+ }
315
+ declare class PhoneApi {
316
+ #private;
317
+ /**
318
+ * Sends a one time login code to a user's phone number via sms
319
+ *
320
+ * @param phoneNumber The phone number to send the one time login code
321
+ * @param token A CAPTCHA token
322
+ */
323
+ sendCode(phoneNumber: string, token?: string): Promise<import("@privy-io/public-api").PrivySuccessObject>;
324
+ /**
325
+ * Logs a user in via a phone number and one time code
326
+ *
327
+ * @param phoneNumber The phone number that the one time code was sent to
328
+ * @param code The one time code
329
+ */
330
+ loginWithCode(phoneNumber: string, code: string): Promise<import("@privy-io/public-api").PrivyAuthenticatedUser>;
331
+ /**
332
+ * Links a phone number to an existing user
333
+ *
334
+ * @param phoneNumber The phone number that the one time code was sent to
335
+ * @param code The one time code
336
+ */
337
+ linkWithCode(phoneNumber: string, code: string): Promise<import("@privy-io/public-api").PrivyUser>;
338
+ unlink(phoneNumber: string): Promise<import("@privy-io/public-api").PrivyUser>;
339
+ }
340
+ declare class AuthApi {
341
+ #private;
342
+ /**
343
+ * APIs for login with a custom JWT
344
+ */
345
+ readonly customProvider: CustomProviderApi;
346
+ /**
347
+ * APIs for passwordless login with sms
348
+ */
349
+ readonly phone: PhoneApi;
350
+ /**
351
+ * APIs for passwordless login with email
352
+ */
353
+ readonly email: EmailApi;
354
+ /**
355
+ * APIs for login with OAuth
356
+ */
357
+ readonly oauth: OAuthApi;
358
+ /**
359
+ * Logs the current user out.
360
+ */
361
+ logout(): Promise<void>;
362
+ }
361
363
  declare class EmbeddedWalletApi {
362
364
  #private;
363
365
  /**
@@ -485,7 +487,6 @@ export class InMemoryCache implements Storage {
485
487
  del(key: string): void;
486
488
  getKeys(): string[];
487
489
  }
488
- export type PrivyEmbeddedWalletProvider = EmbeddedWalletProvider;
489
490
  export type { OAuthProviderType } from '@privy-io/public-api';
490
491
  export default Privy;
491
492
 
@@ -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/utils/NonEmptyArray.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,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';\nexport * from './chains';\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/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/utils/NonEmptyArray.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/types.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/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/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,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';\nexport * from './chains';\n\nexport default Privy;\n"],"names":[],"version":3,"file":"index.d.ts.map"}
package/dist/index.js CHANGED
@@ -109,8 +109,10 @@ class $1f21db1ab6fece0e$export$2e2bcd8739ae039 {
109
109
  code: code
110
110
  }
111
111
  });
112
- this.#privyInternal.session.storeToken(res.token);
113
- this.#privyInternal.session.storeRefreshToken(res.refresh_token);
112
+ await Promise.all([
113
+ this.#privyInternal.session.storeToken(res.token),
114
+ this.#privyInternal.session.storeRefreshToken(res.refresh_token)
115
+ ]);
114
116
  this.#privyInternal.callbacks?.setUser(res.user);
115
117
  return res;
116
118
  }
@@ -310,7 +312,9 @@ class $98111b9dfa4b03f7$export$2e2bcd8739ae039 {
310
312
  console.warn("Error destroying session");
311
313
  }
312
314
  // Destroy the local auth state
313
- this.#privyInternal.session.destroyLocalState();
315
+ await this.#privyInternal.session.destroyLocalState({
316
+ reason: "logout"
317
+ });
314
318
  this.#privyInternal.callbacks?.setUser(null);
315
319
  }
316
320
  }
@@ -1885,6 +1889,7 @@ $af98a8a573bb7c25$exports = JSON.parse('{"name":"@privy-io/js-sdk-core","version
1885
1889
 
1886
1890
 
1887
1891
 
1892
+
1888
1893
  class $4c28dd58a3e1b414$export$50792b0e93539fde {
1889
1894
  static parse(token) {
1890
1895
  try {
@@ -1940,10 +1945,20 @@ const $4a5ceffc04a8e7b0$var$FORKED_TOKEN_STORAGE_KEY = "privy:session_transfer_t
1940
1945
  // so we can eagerly re-authenticate before the server would
1941
1946
  // reject requests with a 401.
1942
1947
  const $4a5ceffc04a8e7b0$var$DEFAULT_EXPIRATION_PADDING_IN_SECONDS = 30;
1943
- class $4a5ceffc04a8e7b0$export$1fb4852a55678982 {
1948
+ const $4a5ceffc04a8e7b0$var$events = [
1949
+ "storage_cleared",
1950
+ "token_cleared",
1951
+ "refresh_token_cleared",
1952
+ "forked_token_cleared",
1953
+ "token_stored",
1954
+ "refresh_token_stored"
1955
+ ];
1956
+ class $4a5ceffc04a8e7b0$export$1fb4852a55678982 extends (0, ($parcel$interopDefault($bwzhE$eventemitter3))) {
1957
+ static #_ = this.events = $4a5ceffc04a8e7b0$var$events;
1944
1958
  #storage;
1945
1959
  #isUsingServerCookies;
1946
1960
  constructor(o){
1961
+ super();
1947
1962
  this.#isUsingServerCookies = false;
1948
1963
  this.#storage = o.storage;
1949
1964
  }
@@ -1958,7 +1973,9 @@ class $4a5ceffc04a8e7b0$export$1fb4852a55678982 {
1958
1973
  else return null;
1959
1974
  } catch (error) {
1960
1975
  console.error(error);
1961
- this.destroyLocalState();
1976
+ await this.destroyLocalState({
1977
+ reason: "getToken_error"
1978
+ });
1962
1979
  return null;
1963
1980
  }
1964
1981
  }
@@ -1968,7 +1985,9 @@ class $4a5ceffc04a8e7b0$export$1fb4852a55678982 {
1968
1985
  return typeof refreshToken === "string" ? refreshToken : null;
1969
1986
  } catch (error) {
1970
1987
  console.error(error);
1971
- this.destroyLocalState();
1988
+ await this.destroyLocalState({
1989
+ reason: "getRefreshToken_error"
1990
+ });
1972
1991
  return null;
1973
1992
  }
1974
1993
  }
@@ -1978,7 +1997,9 @@ class $4a5ceffc04a8e7b0$export$1fb4852a55678982 {
1978
1997
  return typeof forkedToken === "string" ? forkedToken : null;
1979
1998
  } catch (error) {
1980
1999
  console.error(error);
1981
- this.destroyLocalState();
2000
+ await this.destroyLocalState({
2001
+ reason: "getForkedToken_error"
2002
+ });
1982
2003
  return null;
1983
2004
  }
1984
2005
  }
@@ -2022,16 +2043,24 @@ class $4a5ceffc04a8e7b0$export$1fb4852a55678982 {
2022
2043
  const token = (0, $4c28dd58a3e1b414$export$50792b0e93539fde).parse(tokenRaw);
2023
2044
  return token !== null && !token.isExpired($4a5ceffc04a8e7b0$var$DEFAULT_EXPIRATION_PADDING_IN_SECONDS);
2024
2045
  }
2025
- async destroyLocalState() {
2026
- await Promise.all([
2027
- this.storeToken(null),
2028
- this.storeRefreshToken(null),
2046
+ /**
2047
+ * Accepts an optional options object to specify the reason storage is being cleared
2048
+ */ async destroyLocalState(opts) {
2049
+ if (opts?.reason) this.emit("storage_cleared", {
2050
+ reason: opts.reason
2051
+ });
2052
+ return Promise.all([
2053
+ this.#storage.del($4a5ceffc04a8e7b0$var$TOKEN_STORAGE_KEY),
2054
+ this.#storage.del($4a5ceffc04a8e7b0$var$REFRESH_TOKEN_STORAGE_KEY),
2029
2055
  this.clearForkedToken()
2030
2056
  ]);
2031
2057
  }
2032
2058
  async storeToken(token) {
2033
2059
  if (typeof token === "string") {
2034
2060
  await this.#storage.put($4a5ceffc04a8e7b0$var$TOKEN_STORAGE_KEY, token);
2061
+ this.emit("token_stored", {
2062
+ cookiesEnabled: this.#isUsingServerCookies
2063
+ });
2035
2064
  if (!this.#isUsingServerCookies) {
2036
2065
  const exp = (0, $4c28dd58a3e1b414$export$50792b0e93539fde).parse(token)?.expiration;
2037
2066
  (0, ($parcel$interopDefault($bwzhE$jscookie))).set($4a5ceffc04a8e7b0$var$TOKEN_COOKIE_KEY, token, {
@@ -2042,12 +2071,18 @@ class $4a5ceffc04a8e7b0$export$1fb4852a55678982 {
2042
2071
  }
2043
2072
  } else {
2044
2073
  await this.#storage.del($4a5ceffc04a8e7b0$var$TOKEN_STORAGE_KEY);
2074
+ this.emit("token_cleared", {
2075
+ reason: "set_with_non_string_value"
2076
+ });
2045
2077
  (0, ($parcel$interopDefault($bwzhE$jscookie))).remove($4a5ceffc04a8e7b0$var$TOKEN_COOKIE_KEY);
2046
2078
  }
2047
2079
  }
2048
2080
  async storeRefreshToken(refreshToken) {
2049
2081
  if (typeof refreshToken === "string") {
2050
2082
  await this.#storage.put($4a5ceffc04a8e7b0$var$REFRESH_TOKEN_STORAGE_KEY, refreshToken);
2083
+ this.emit("refresh_token_stored", {
2084
+ cookiesEnabled: this.#isUsingServerCookies
2085
+ });
2051
2086
  if (!this.#isUsingServerCookies) {
2052
2087
  (0, ($parcel$interopDefault($bwzhE$jscookie))).set($4a5ceffc04a8e7b0$var$SESSION_COOKIE_KEY, "t", {
2053
2088
  sameSite: "Strict",
@@ -2066,6 +2101,9 @@ class $4a5ceffc04a8e7b0$export$1fb4852a55678982 {
2066
2101
  }
2067
2102
  } else {
2068
2103
  await this.#storage.del($4a5ceffc04a8e7b0$var$REFRESH_TOKEN_STORAGE_KEY);
2104
+ this.emit("refresh_token_cleared", {
2105
+ reason: "set_with_non_string_value"
2106
+ });
2069
2107
  (0, ($parcel$interopDefault($bwzhE$jscookie))).remove($4a5ceffc04a8e7b0$var$REFRESH_TOKEN_COOKIE_KEY);
2070
2108
  (0, ($parcel$interopDefault($bwzhE$jscookie))).remove($4a5ceffc04a8e7b0$var$SESSION_COOKIE_KEY);
2071
2109
  }
@@ -2094,6 +2132,7 @@ function $5945f4703f62befa$var$isAuthError(error) {
2094
2132
  }
2095
2133
  class $5945f4703f62befa$export$9e80c3751b841788 {
2096
2134
  #storage;
2135
+ #logLevel;
2097
2136
  /**
2098
2137
  * DO NOT USE DIRECTLY: use `this.#getOrGenerateClientAnalyticsId()` instead
2099
2138
  *
@@ -2112,8 +2151,10 @@ class $5945f4703f62befa$export$9e80c3751b841788 {
2112
2151
  * @property {string} o.appId - The application ID
2113
2152
  * @property {string} o.baseUrl - The base URL for the application
2114
2153
  */ constructor(o){
2154
+ this.#logLevel = "ERROR";
2115
2155
  this.#sdkVersion = `js-sdk-core:${0, $af98a8a573bb7c25$exports.version}`;
2116
2156
  this.#cache = new Map();
2157
+ if (o.logLevel) this.#logLevel = o.logLevel;
2117
2158
  // The call below to #getOrGenerateClientAnalyticsId accesses storage so prepare it first
2118
2159
  this.#storage = o.storage;
2119
2160
  // Sets this.#_clientId (for analytics) early
@@ -2135,6 +2176,9 @@ class $5945f4703f62befa$export$9e80c3751b841788 {
2135
2176
  retries: 3,
2136
2177
  retryDelay: 500
2137
2178
  });
2179
+ if (this.#logLevel === "DEBUG") (0, $4a5ceffc04a8e7b0$export$1fb4852a55678982).events.forEach((name)=>{
2180
+ this.session.on(name, (opts)=>this.createAnalyticsEvent(name, opts));
2181
+ });
2138
2182
  }
2139
2183
  /**
2140
2184
  * Getter for ready state
@@ -2337,19 +2381,31 @@ class $5945f4703f62befa$export$9e80c3751b841788 {
2337
2381
  // a logged out state so we throw this error and handle it similar to
2338
2382
  // a network error.
2339
2383
  if (!res.token) throw new Error("missing_or_invalid_token");
2340
- this.session.storeToken(res.token);
2341
- this.session.storeRefreshToken(res.refresh_token);
2384
+ await Promise.all([
2385
+ this.session.storeToken(res.token),
2386
+ this.session.storeRefreshToken(res.refresh_token)
2387
+ ]);
2342
2388
  this.callbacks?.setUser(res.user);
2343
2389
  return res;
2344
2390
  } catch (error) {
2345
2391
  if ($5945f4703f62befa$var$isAuthError(error) && error.code === "missing_or_invalid_token") {
2346
2392
  // If session cannot be refreshed with current refreshToken, clear local auth state
2347
2393
  // otherwise this will result in a loop that is only escapable by clearing storage in userland
2348
- this.session.destroyLocalState();
2394
+ await Promise.all([
2395
+ this.session.destroyLocalState(),
2396
+ this.#logLevel === "DEBUG" ? this.createAnalyticsEvent("storage_cleared", {
2397
+ reason: error.code
2398
+ }) : Promise.resolve()
2399
+ ]);
2349
2400
  this.callbacks?.setUser(null);
2350
2401
  } else if (error instanceof Error && error.message === "missing_or_invalid_token") {
2351
2402
  // Handle when this error is throw explicitly above
2352
- this.session.destroyLocalState();
2403
+ await Promise.all([
2404
+ this.session.destroyLocalState(),
2405
+ this.#logLevel === "DEBUG" ? this.createAnalyticsEvent("storage_cleared", {
2406
+ reason: error.message
2407
+ }) : Promise.resolve()
2408
+ ]);
2353
2409
  this.callbacks?.setUser(null);
2354
2410
  }
2355
2411
  throw error;
package/dist/index.mjs CHANGED
@@ -76,8 +76,10 @@ class $740ec7e42dc11c1e$export$2e2bcd8739ae039 {
76
76
  code: code
77
77
  }
78
78
  });
79
- this.#privyInternal.session.storeToken(res.token);
80
- this.#privyInternal.session.storeRefreshToken(res.refresh_token);
79
+ await Promise.all([
80
+ this.#privyInternal.session.storeToken(res.token),
81
+ this.#privyInternal.session.storeRefreshToken(res.refresh_token)
82
+ ]);
81
83
  this.#privyInternal.callbacks?.setUser(res.user);
82
84
  return res;
83
85
  }
@@ -277,7 +279,9 @@ class $a712a7384002dbf3$export$2e2bcd8739ae039 {
277
279
  console.warn("Error destroying session");
278
280
  }
279
281
  // Destroy the local auth state
280
- this.#privyInternal.session.destroyLocalState();
282
+ await this.#privyInternal.session.destroyLocalState({
283
+ reason: "logout"
284
+ });
281
285
  this.#privyInternal.callbacks?.setUser(null);
282
286
  }
283
287
  }
@@ -1852,6 +1856,7 @@ $53a9b3651331d972$exports = JSON.parse('{"name":"@privy-io/js-sdk-core","version
1852
1856
 
1853
1857
 
1854
1858
 
1859
+
1855
1860
  class $efa0c2e06cf7cca2$export$50792b0e93539fde {
1856
1861
  static parse(token) {
1857
1862
  try {
@@ -1907,10 +1912,20 @@ const $0b6eb30d38bf8477$var$FORKED_TOKEN_STORAGE_KEY = "privy:session_transfer_t
1907
1912
  // so we can eagerly re-authenticate before the server would
1908
1913
  // reject requests with a 401.
1909
1914
  const $0b6eb30d38bf8477$var$DEFAULT_EXPIRATION_PADDING_IN_SECONDS = 30;
1910
- class $0b6eb30d38bf8477$export$1fb4852a55678982 {
1915
+ const $0b6eb30d38bf8477$var$events = [
1916
+ "storage_cleared",
1917
+ "token_cleared",
1918
+ "refresh_token_cleared",
1919
+ "forked_token_cleared",
1920
+ "token_stored",
1921
+ "refresh_token_stored"
1922
+ ];
1923
+ class $0b6eb30d38bf8477$export$1fb4852a55678982 extends (0, $kxB2R$eventemitter3) {
1924
+ static #_ = this.events = $0b6eb30d38bf8477$var$events;
1911
1925
  #storage;
1912
1926
  #isUsingServerCookies;
1913
1927
  constructor(o){
1928
+ super();
1914
1929
  this.#isUsingServerCookies = false;
1915
1930
  this.#storage = o.storage;
1916
1931
  }
@@ -1925,7 +1940,9 @@ class $0b6eb30d38bf8477$export$1fb4852a55678982 {
1925
1940
  else return null;
1926
1941
  } catch (error) {
1927
1942
  console.error(error);
1928
- this.destroyLocalState();
1943
+ await this.destroyLocalState({
1944
+ reason: "getToken_error"
1945
+ });
1929
1946
  return null;
1930
1947
  }
1931
1948
  }
@@ -1935,7 +1952,9 @@ class $0b6eb30d38bf8477$export$1fb4852a55678982 {
1935
1952
  return typeof refreshToken === "string" ? refreshToken : null;
1936
1953
  } catch (error) {
1937
1954
  console.error(error);
1938
- this.destroyLocalState();
1955
+ await this.destroyLocalState({
1956
+ reason: "getRefreshToken_error"
1957
+ });
1939
1958
  return null;
1940
1959
  }
1941
1960
  }
@@ -1945,7 +1964,9 @@ class $0b6eb30d38bf8477$export$1fb4852a55678982 {
1945
1964
  return typeof forkedToken === "string" ? forkedToken : null;
1946
1965
  } catch (error) {
1947
1966
  console.error(error);
1948
- this.destroyLocalState();
1967
+ await this.destroyLocalState({
1968
+ reason: "getForkedToken_error"
1969
+ });
1949
1970
  return null;
1950
1971
  }
1951
1972
  }
@@ -1989,16 +2010,24 @@ class $0b6eb30d38bf8477$export$1fb4852a55678982 {
1989
2010
  const token = (0, $efa0c2e06cf7cca2$export$50792b0e93539fde).parse(tokenRaw);
1990
2011
  return token !== null && !token.isExpired($0b6eb30d38bf8477$var$DEFAULT_EXPIRATION_PADDING_IN_SECONDS);
1991
2012
  }
1992
- async destroyLocalState() {
1993
- await Promise.all([
1994
- this.storeToken(null),
1995
- this.storeRefreshToken(null),
2013
+ /**
2014
+ * Accepts an optional options object to specify the reason storage is being cleared
2015
+ */ async destroyLocalState(opts) {
2016
+ if (opts?.reason) this.emit("storage_cleared", {
2017
+ reason: opts.reason
2018
+ });
2019
+ return Promise.all([
2020
+ this.#storage.del($0b6eb30d38bf8477$var$TOKEN_STORAGE_KEY),
2021
+ this.#storage.del($0b6eb30d38bf8477$var$REFRESH_TOKEN_STORAGE_KEY),
1996
2022
  this.clearForkedToken()
1997
2023
  ]);
1998
2024
  }
1999
2025
  async storeToken(token) {
2000
2026
  if (typeof token === "string") {
2001
2027
  await this.#storage.put($0b6eb30d38bf8477$var$TOKEN_STORAGE_KEY, token);
2028
+ this.emit("token_stored", {
2029
+ cookiesEnabled: this.#isUsingServerCookies
2030
+ });
2002
2031
  if (!this.#isUsingServerCookies) {
2003
2032
  const exp = (0, $efa0c2e06cf7cca2$export$50792b0e93539fde).parse(token)?.expiration;
2004
2033
  (0, $kxB2R$jscookie).set($0b6eb30d38bf8477$var$TOKEN_COOKIE_KEY, token, {
@@ -2009,12 +2038,18 @@ class $0b6eb30d38bf8477$export$1fb4852a55678982 {
2009
2038
  }
2010
2039
  } else {
2011
2040
  await this.#storage.del($0b6eb30d38bf8477$var$TOKEN_STORAGE_KEY);
2041
+ this.emit("token_cleared", {
2042
+ reason: "set_with_non_string_value"
2043
+ });
2012
2044
  (0, $kxB2R$jscookie).remove($0b6eb30d38bf8477$var$TOKEN_COOKIE_KEY);
2013
2045
  }
2014
2046
  }
2015
2047
  async storeRefreshToken(refreshToken) {
2016
2048
  if (typeof refreshToken === "string") {
2017
2049
  await this.#storage.put($0b6eb30d38bf8477$var$REFRESH_TOKEN_STORAGE_KEY, refreshToken);
2050
+ this.emit("refresh_token_stored", {
2051
+ cookiesEnabled: this.#isUsingServerCookies
2052
+ });
2018
2053
  if (!this.#isUsingServerCookies) {
2019
2054
  (0, $kxB2R$jscookie).set($0b6eb30d38bf8477$var$SESSION_COOKIE_KEY, "t", {
2020
2055
  sameSite: "Strict",
@@ -2033,6 +2068,9 @@ class $0b6eb30d38bf8477$export$1fb4852a55678982 {
2033
2068
  }
2034
2069
  } else {
2035
2070
  await this.#storage.del($0b6eb30d38bf8477$var$REFRESH_TOKEN_STORAGE_KEY);
2071
+ this.emit("refresh_token_cleared", {
2072
+ reason: "set_with_non_string_value"
2073
+ });
2036
2074
  (0, $kxB2R$jscookie).remove($0b6eb30d38bf8477$var$REFRESH_TOKEN_COOKIE_KEY);
2037
2075
  (0, $kxB2R$jscookie).remove($0b6eb30d38bf8477$var$SESSION_COOKIE_KEY);
2038
2076
  }
@@ -2061,6 +2099,7 @@ function $83ff42e2a0f1e24a$var$isAuthError(error) {
2061
2099
  }
2062
2100
  class $83ff42e2a0f1e24a$export$9e80c3751b841788 {
2063
2101
  #storage;
2102
+ #logLevel;
2064
2103
  /**
2065
2104
  * DO NOT USE DIRECTLY: use `this.#getOrGenerateClientAnalyticsId()` instead
2066
2105
  *
@@ -2079,8 +2118,10 @@ class $83ff42e2a0f1e24a$export$9e80c3751b841788 {
2079
2118
  * @property {string} o.appId - The application ID
2080
2119
  * @property {string} o.baseUrl - The base URL for the application
2081
2120
  */ constructor(o){
2121
+ this.#logLevel = "ERROR";
2082
2122
  this.#sdkVersion = `js-sdk-core:${0, $53a9b3651331d972$exports.version}`;
2083
2123
  this.#cache = new Map();
2124
+ if (o.logLevel) this.#logLevel = o.logLevel;
2084
2125
  // The call below to #getOrGenerateClientAnalyticsId accesses storage so prepare it first
2085
2126
  this.#storage = o.storage;
2086
2127
  // Sets this.#_clientId (for analytics) early
@@ -2102,6 +2143,9 @@ class $83ff42e2a0f1e24a$export$9e80c3751b841788 {
2102
2143
  retries: 3,
2103
2144
  retryDelay: 500
2104
2145
  });
2146
+ if (this.#logLevel === "DEBUG") (0, $0b6eb30d38bf8477$export$1fb4852a55678982).events.forEach((name)=>{
2147
+ this.session.on(name, (opts)=>this.createAnalyticsEvent(name, opts));
2148
+ });
2105
2149
  }
2106
2150
  /**
2107
2151
  * Getter for ready state
@@ -2304,19 +2348,31 @@ class $83ff42e2a0f1e24a$export$9e80c3751b841788 {
2304
2348
  // a logged out state so we throw this error and handle it similar to
2305
2349
  // a network error.
2306
2350
  if (!res.token) throw new Error("missing_or_invalid_token");
2307
- this.session.storeToken(res.token);
2308
- this.session.storeRefreshToken(res.refresh_token);
2351
+ await Promise.all([
2352
+ this.session.storeToken(res.token),
2353
+ this.session.storeRefreshToken(res.refresh_token)
2354
+ ]);
2309
2355
  this.callbacks?.setUser(res.user);
2310
2356
  return res;
2311
2357
  } catch (error) {
2312
2358
  if ($83ff42e2a0f1e24a$var$isAuthError(error) && error.code === "missing_or_invalid_token") {
2313
2359
  // If session cannot be refreshed with current refreshToken, clear local auth state
2314
2360
  // otherwise this will result in a loop that is only escapable by clearing storage in userland
2315
- this.session.destroyLocalState();
2361
+ await Promise.all([
2362
+ this.session.destroyLocalState(),
2363
+ this.#logLevel === "DEBUG" ? this.createAnalyticsEvent("storage_cleared", {
2364
+ reason: error.code
2365
+ }) : Promise.resolve()
2366
+ ]);
2316
2367
  this.callbacks?.setUser(null);
2317
2368
  } else if (error instanceof Error && error.message === "missing_or_invalid_token") {
2318
2369
  // Handle when this error is throw explicitly above
2319
- this.session.destroyLocalState();
2370
+ await Promise.all([
2371
+ this.session.destroyLocalState(),
2372
+ this.#logLevel === "DEBUG" ? this.createAnalyticsEvent("storage_cleared", {
2373
+ reason: error.message
2374
+ }) : Promise.resolve()
2375
+ ]);
2320
2376
  this.callbacks?.setUser(null);
2321
2377
  }
2322
2378
  throw error;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@privy-io/js-sdk-core",
3
- "version": "0.9.3",
3
+ "version": "0.9.4-beta-20240118055836",
4
4
  "description": "Vanilla JS client for the Privy Auth API",
5
5
  "keywords": [
6
6
  "authentication",
@@ -60,7 +60,7 @@
60
60
  },
61
61
  "dependencies": {
62
62
  "@ethersproject/providers": "^5.7.2",
63
- "@privy-io/public-api": "1.5.0",
63
+ "@privy-io/public-api": "1.5.1-beta-20240118055836",
64
64
  "eventemitter3": "^5.0.1",
65
65
  "fetch-retry": "^5.0.6",
66
66
  "jose": "^4.11.2",