@getpara/user-management-client 1.5.1 → 1.7.0

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/cjs/index.js CHANGED
@@ -1,6 +1,8 @@
1
1
  var __create = Object.create;
2
2
  var __defProp = Object.defineProperty;
3
+ var __defProps = Object.defineProperties;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
6
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
7
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
8
  var __getProtoOf = Object.getPrototypeOf;
@@ -18,6 +20,7 @@ var __spreadValues = (a, b) => {
18
20
  }
19
21
  return a;
20
22
  };
23
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
21
24
  var __objRest = (source, exclude) => {
22
25
  var target = {};
23
26
  for (var prop in source)
@@ -99,6 +102,7 @@ __export(src_exports, {
99
102
  handleResponseError: () => handleResponseError,
100
103
  handleResponseSuccess: () => handleResponseSuccess,
101
104
  isEmail: () => isEmail,
105
+ isExternalWallet: () => isExternalWallet,
102
106
  isExternalWalletAddress: () => isExternalWalletAddress,
103
107
  isFarcaster: () => isFarcaster,
104
108
  isPhone: () => isPhone,
@@ -131,19 +135,22 @@ function isValid(s) {
131
135
  return !!s && s !== "null" && s !== "undefined" && s !== "";
132
136
  }
133
137
  function isEmail(params) {
134
- return isValid(params.email) && !isValid(params.phone) && !isValid(params.countryCode) && !isValid(params.farcasterUsername) && !isValid(params.telegramUserId);
138
+ return isValid(params.email) && !isValid(params.phone) && !isValid(params.countryCode) && !isValid(params.farcasterUsername) && !isValid(params.telegramUserId) && !isValid(params.externalWalletUserId);
135
139
  }
136
140
  function isPhone(params) {
137
- return isValid(params.phone) && isValid(params.countryCode) && !isValid(params.email) && !isValid(params.farcasterUsername) && !isValid(params.telegramUserId);
141
+ return isValid(params.phone) && isValid(params.countryCode) && !isValid(params.email) && !isValid(params.farcasterUsername) && !isValid(params.telegramUserId) && !isValid(params.externalWalletUserId);
138
142
  }
139
143
  function isFarcaster(params) {
140
- return isValid(params.farcasterUsername) && !isValid(params.email) && !isValid(params.phone) && !isValid(params.countryCode) && !isValid(params.telegramUserId);
144
+ return isValid(params.farcasterUsername) && !isValid(params.email) && !isValid(params.phone) && !isValid(params.countryCode) && !isValid(params.telegramUserId) && !isValid(params.externalWalletUserId);
141
145
  }
142
146
  function isTelegram(params) {
143
- return isValid(params.telegramUserId) && !isValid(params.email) && !isValid(params.phone) && !isValid(params.countryCode) && !isValid(params.farcasterUsername);
147
+ return isValid(params.telegramUserId) && !isValid(params.email) && !isValid(params.phone) && !isValid(params.countryCode) && !isValid(params.farcasterUsername) && !isValid(params.externalWalletUserId);
144
148
  }
145
149
  function isUserId(params) {
146
- return isValid(params.userId) && !isValid(params.email) && !isValid(params.phone) && !isValid(params.countryCode) && !isValid(params.farcasterUsername) && !isValid(params.telegramUserId);
150
+ return isValid(params.userId) && !isValid(params.email) && !isValid(params.phone) && !isValid(params.countryCode) && !isValid(params.farcasterUsername) && !isValid(params.telegramUserId) && !isValid(params.externalWalletUserId);
151
+ }
152
+ function isExternalWallet(params) {
153
+ return isValid(params.externalWalletAddress) && !isValid(params.email) && !isValid(params.phone) && !isValid(params.countryCode) && !isValid(params.farcasterUsername) && !isValid(params.telegramUserId);
147
154
  }
148
155
  function extractAuthInfo(obj, { allowUserId = false, isRequired = false } = {}) {
149
156
  switch (true) {
@@ -170,6 +177,13 @@ function extractAuthInfo(obj, { allowUserId = false, isRequired = false } = {})
170
177
  identifier: obj.telegramUserId,
171
178
  publicKeyIdentifier: `${obj.telegramUserId}-telegram`
172
179
  };
180
+ case isExternalWallet(obj):
181
+ return {
182
+ auth: { externalWalletAddress: obj.externalWalletAddress },
183
+ authType: "externalWallet",
184
+ identifier: obj.externalWalletAddress,
185
+ publicKeyIdentifier: `${obj.externalWalletAddress}-external-wallet`
186
+ };
173
187
  case (isUserId(obj) && allowUserId):
174
188
  return { auth: { userId: obj.userId }, authType: "userId", identifier: obj.userId, publicKeyIdentifier: obj.userId };
175
189
  default:
@@ -443,9 +457,11 @@ var Client = class {
443
457
  const res = yield this.baseRequest.get(`/users/${userId}/wallets/${walletId}/capsule-share`);
444
458
  return res.data.share;
445
459
  });
446
- // GET /download-backup-kit/:userId
447
- this.getBackupKit = (userId) => __async(this, null, function* () {
448
- const res = yield this.baseRequest.get(`/download-backup-kit/${userId}`, { responseType: "blob" });
460
+ // GET /users/:userId/wallets/:walletId/download-backup-kit
461
+ this.getBackupKit = (userId, walletId) => __async(this, null, function* () {
462
+ const res = yield this.baseRequest.get(`/users/${userId}/wallets/${walletId}/download-backup-kit`, {
463
+ responseType: "blob"
464
+ });
449
465
  return res;
450
466
  });
451
467
  // PATCH /users/:userId/biometrics/:biometricId
@@ -1003,6 +1019,24 @@ var Client = class {
1003
1019
  return res.data;
1004
1020
  });
1005
1021
  }
1022
+ // GET /users/:userId/accounts
1023
+ getAccountMetadata(userId, partnerId) {
1024
+ return __async(this, null, function* () {
1025
+ const res = yield this.baseRequest.get(`/users/${userId}/oauth/accounts`, {
1026
+ params: { partnerId }
1027
+ });
1028
+ return {
1029
+ accountMetadata: Object.entries(res.data.accountMetadata || {}).reduce(
1030
+ (acc, [method, obj]) => __spreadProps(__spreadValues({}, acc), {
1031
+ [method]: __spreadProps(__spreadValues({}, obj), {
1032
+ date: new Date(obj.date)
1033
+ })
1034
+ }),
1035
+ {}
1036
+ )
1037
+ };
1038
+ });
1039
+ }
1006
1040
  };
1007
1041
  var client_default = Client;
1008
1042
 
@@ -1158,6 +1192,7 @@ var src_default = client_default;
1158
1192
  handleResponseError,
1159
1193
  handleResponseSuccess,
1160
1194
  isEmail,
1195
+ isExternalWallet,
1161
1196
  isExternalWalletAddress,
1162
1197
  isFarcaster,
1163
1198
  isPhone,
Binary file
Binary file
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "commonjs"
3
+ }
package/dist/esm/index.js CHANGED
@@ -1,4 +1,6 @@
1
1
  var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
2
4
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
4
6
  var __propIsEnum = Object.prototype.propertyIsEnumerable;
@@ -14,6 +16,7 @@ var __spreadValues = (a, b) => {
14
16
  }
15
17
  return a;
16
18
  };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
17
20
  var __objRest = (source, exclude) => {
18
21
  var target = {};
19
22
  for (var prop in source)
@@ -70,19 +73,22 @@ function isValid(s) {
70
73
  return !!s && s !== "null" && s !== "undefined" && s !== "";
71
74
  }
72
75
  function isEmail(params) {
73
- return isValid(params.email) && !isValid(params.phone) && !isValid(params.countryCode) && !isValid(params.farcasterUsername) && !isValid(params.telegramUserId);
76
+ return isValid(params.email) && !isValid(params.phone) && !isValid(params.countryCode) && !isValid(params.farcasterUsername) && !isValid(params.telegramUserId) && !isValid(params.externalWalletUserId);
74
77
  }
75
78
  function isPhone(params) {
76
- return isValid(params.phone) && isValid(params.countryCode) && !isValid(params.email) && !isValid(params.farcasterUsername) && !isValid(params.telegramUserId);
79
+ return isValid(params.phone) && isValid(params.countryCode) && !isValid(params.email) && !isValid(params.farcasterUsername) && !isValid(params.telegramUserId) && !isValid(params.externalWalletUserId);
77
80
  }
78
81
  function isFarcaster(params) {
79
- return isValid(params.farcasterUsername) && !isValid(params.email) && !isValid(params.phone) && !isValid(params.countryCode) && !isValid(params.telegramUserId);
82
+ return isValid(params.farcasterUsername) && !isValid(params.email) && !isValid(params.phone) && !isValid(params.countryCode) && !isValid(params.telegramUserId) && !isValid(params.externalWalletUserId);
80
83
  }
81
84
  function isTelegram(params) {
82
- return isValid(params.telegramUserId) && !isValid(params.email) && !isValid(params.phone) && !isValid(params.countryCode) && !isValid(params.farcasterUsername);
85
+ return isValid(params.telegramUserId) && !isValid(params.email) && !isValid(params.phone) && !isValid(params.countryCode) && !isValid(params.farcasterUsername) && !isValid(params.externalWalletUserId);
83
86
  }
84
87
  function isUserId(params) {
85
- return isValid(params.userId) && !isValid(params.email) && !isValid(params.phone) && !isValid(params.countryCode) && !isValid(params.farcasterUsername) && !isValid(params.telegramUserId);
88
+ return isValid(params.userId) && !isValid(params.email) && !isValid(params.phone) && !isValid(params.countryCode) && !isValid(params.farcasterUsername) && !isValid(params.telegramUserId) && !isValid(params.externalWalletUserId);
89
+ }
90
+ function isExternalWallet(params) {
91
+ return isValid(params.externalWalletAddress) && !isValid(params.email) && !isValid(params.phone) && !isValid(params.countryCode) && !isValid(params.farcasterUsername) && !isValid(params.telegramUserId);
86
92
  }
87
93
  function extractAuthInfo(obj, { allowUserId = false, isRequired = false } = {}) {
88
94
  switch (true) {
@@ -109,6 +115,13 @@ function extractAuthInfo(obj, { allowUserId = false, isRequired = false } = {})
109
115
  identifier: obj.telegramUserId,
110
116
  publicKeyIdentifier: `${obj.telegramUserId}-telegram`
111
117
  };
118
+ case isExternalWallet(obj):
119
+ return {
120
+ auth: { externalWalletAddress: obj.externalWalletAddress },
121
+ authType: "externalWallet",
122
+ identifier: obj.externalWalletAddress,
123
+ publicKeyIdentifier: `${obj.externalWalletAddress}-external-wallet`
124
+ };
112
125
  case (isUserId(obj) && allowUserId):
113
126
  return { auth: { userId: obj.userId }, authType: "userId", identifier: obj.userId, publicKeyIdentifier: obj.userId };
114
127
  default:
@@ -382,9 +395,11 @@ var Client = class {
382
395
  const res = yield this.baseRequest.get(`/users/${userId}/wallets/${walletId}/capsule-share`);
383
396
  return res.data.share;
384
397
  });
385
- // GET /download-backup-kit/:userId
386
- this.getBackupKit = (userId) => __async(this, null, function* () {
387
- const res = yield this.baseRequest.get(`/download-backup-kit/${userId}`, { responseType: "blob" });
398
+ // GET /users/:userId/wallets/:walletId/download-backup-kit
399
+ this.getBackupKit = (userId, walletId) => __async(this, null, function* () {
400
+ const res = yield this.baseRequest.get(`/users/${userId}/wallets/${walletId}/download-backup-kit`, {
401
+ responseType: "blob"
402
+ });
388
403
  return res;
389
404
  });
390
405
  // PATCH /users/:userId/biometrics/:biometricId
@@ -942,6 +957,24 @@ var Client = class {
942
957
  return res.data;
943
958
  });
944
959
  }
960
+ // GET /users/:userId/accounts
961
+ getAccountMetadata(userId, partnerId) {
962
+ return __async(this, null, function* () {
963
+ const res = yield this.baseRequest.get(`/users/${userId}/oauth/accounts`, {
964
+ params: { partnerId }
965
+ });
966
+ return {
967
+ accountMetadata: Object.entries(res.data.accountMetadata || {}).reduce(
968
+ (acc, [method, obj]) => __spreadProps(__spreadValues({}, acc), {
969
+ [method]: __spreadProps(__spreadValues({}, obj), {
970
+ date: new Date(obj.date)
971
+ })
972
+ }),
973
+ {}
974
+ )
975
+ };
976
+ });
977
+ }
945
978
  };
946
979
  var client_default = Client;
947
980
 
@@ -1097,6 +1130,7 @@ export {
1097
1130
  handleResponseError,
1098
1131
  handleResponseSuccess,
1099
1132
  isEmail,
1133
+ isExternalWallet,
1100
1134
  isExternalWalletAddress,
1101
1135
  isFarcaster,
1102
1136
  isPhone,
Binary file
Binary file
@@ -0,0 +1,4 @@
1
+ {
2
+ "type": "module",
3
+ "sideEffects": false
4
+ }
@@ -1,5 +1,5 @@
1
1
  import { AxiosResponse } from 'axios';
2
- import { Auth, AuthMethod, AuthParams, BackupKitEmailProps, BiometricLocationHint, Chain, CurrentWalletIds, EncryptedKeyShare, EncryptorType, KeyShareType, Network, OnRampAsset, OnRampConfig, OnRampProvider, OnRampPurchase, OnRampPurchaseCreateParams, OnRampPurchaseUpdateParams, PasswordStatus, PregenIds, PublicKeyStatus, PublicKeyType, TelegramAuthResponse, TPregenIdentifierType, VerificationEmailProps, WalletEntity, WalletParams, WalletScheme, WalletType } from './types/index.js';
2
+ import { AccountMetadata, Auth, AuthMethod, AuthParams, BackupKitEmailProps, BiometricLocationHint, Chain, CurrentWalletIds, EncryptedKeyShare, EncryptorType, KeyShareType, Network, OnRampAsset, OnRampConfig, OnRampProvider, OnRampPurchase, OnRampPurchaseCreateParams, OnRampPurchaseUpdateParams, PasswordStatus, PregenIds, PublicKeyStatus, PublicKeyType, TelegramAuthResponse, TPregenIdentifierType, VerificationEmailProps, WalletEntity, WalletParams, WalletScheme, WalletType } from './types/index.js';
3
3
  interface ConfigOpts {
4
4
  useFetchAdapter?: boolean;
5
5
  }
@@ -213,7 +213,7 @@ declare class Client {
213
213
  }[]): Promise<any>;
214
214
  getTransmissionKeyshares(userId: string, sessionLookupId: string): Promise<any>;
215
215
  getParaShare: (userId: string, walletId: string) => Promise<string>;
216
- getBackupKit: (userId: string) => Promise<any>;
216
+ getBackupKit: (userId: string, walletId: string) => Promise<any>;
217
217
  resendVerificationCode({ userId, ...rest }: {
218
218
  userId: string;
219
219
  } & VerificationEmailProps): Promise<AxiosResponse<any, any>>;
@@ -335,5 +335,8 @@ declare class Client {
335
335
  verifyPasswordChallenge(partnerId: string, body: verifyPasswordChallengeBody): Promise<any>;
336
336
  getEncryptedWalletPrivateKey(passwordId: string): Promise<any>;
337
337
  getUser(userId: string): Promise<any>;
338
+ getAccountMetadata(userId: string, partnerId: string): Promise<{
339
+ accountMetadata: AccountMetadata;
340
+ }>;
338
341
  }
339
342
  export default Client;
@@ -1,11 +1,11 @@
1
- export type AuthType = 'email' | 'phone' | 'farcaster' | 'telegram' | 'userId';
1
+ export type AuthType = 'email' | 'phone' | 'farcaster' | 'telegram' | 'userId' | 'externalWallet';
2
2
  export type $ExtractAuth<T extends AuthType> = {
3
3
  auth: Auth<T>;
4
4
  authType: T;
5
5
  identifier: string;
6
6
  publicKeyIdentifier: string;
7
7
  };
8
- export type ExtractAuth = $ExtractAuth<'email'> | $ExtractAuth<'phone'> | $ExtractAuth<'farcaster'> | $ExtractAuth<'telegram'> | $ExtractAuth<'userId'>;
8
+ export type ExtractAuth = $ExtractAuth<'email'> | $ExtractAuth<'phone'> | $ExtractAuth<'farcaster'> | $ExtractAuth<'telegram'> | $ExtractAuth<'userId'> | $ExtractAuth<'externalWallet'>;
9
9
  export type AuthParams = Record<string, any> & {
10
10
  email?: string;
11
11
  phone?: string;
@@ -13,6 +13,7 @@ export type AuthParams = Record<string, any> & {
13
13
  farcasterUsername?: string;
14
14
  telegramUserId?: string;
15
15
  userId?: string;
16
+ externalWalletAddress?: string;
16
17
  };
17
18
  export type Auth<T extends AuthType = AuthType> = T extends 'email' ? {
18
19
  email: string;
@@ -23,6 +24,8 @@ export type Auth<T extends AuthType = AuthType> = T extends 'email' ? {
23
24
  farcasterUsername: string;
24
25
  } : T extends 'telegram' ? {
25
26
  telegramUserId: string;
27
+ } : T extends 'externalWallet' ? {
28
+ externalWalletAddress: string;
26
29
  } : {
27
30
  userId: string;
28
31
  };
@@ -84,3 +87,8 @@ export type TelegramAuthResponse = {
84
87
  photo_url?: string;
85
88
  username?: string;
86
89
  };
90
+ export type AccountMetadataKey = Lowercase<Exclude<OAuthMethod, OAuthMethod.TWITTER> | 'X'>;
91
+ export type AccountMetadata = Partial<Record<AccountMetadataKey, {
92
+ date: Date;
93
+ metadata: Record<string, any>;
94
+ }>>;
@@ -54,6 +54,8 @@ export interface WalletEntity {
54
54
  lastUsedAt: string | null;
55
55
  lastUsedPartnerId?: string;
56
56
  lastUsedPartner?: PartnerEntity;
57
+ ensName?: string | null;
58
+ ensAvatar?: string | null;
57
59
  }
58
60
  export type CurrentWalletIds = Partial<Record<WalletType, string[]>>;
59
61
  export declare const NON_ED25519: WalletScheme[];
@@ -11,6 +11,7 @@ export declare function isPhone(params: AuthParams): params is Auth<'phone'>;
11
11
  export declare function isFarcaster(params: AuthParams): params is Auth<'farcaster'>;
12
12
  export declare function isTelegram(params: AuthParams): params is Auth<'telegram'>;
13
13
  export declare function isUserId(params: AuthParams): params is Auth<'userId'>;
14
+ export declare function isExternalWallet(params: AuthParams): params is Auth<'externalWallet'>;
14
15
  type ExtractAuthOpts = {
15
16
  allowUserId?: boolean;
16
17
  isRequired?: boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@getpara/user-management-client",
3
- "version": "1.5.1",
3
+ "version": "1.7.0",
4
4
  "main": "dist/cjs/index.js",
5
5
  "module": "dist/esm/index.js",
6
6
  "types": "dist/types/index.d.ts",
@@ -33,5 +33,5 @@
33
33
  "require": "./dist/cjs/index.js"
34
34
  }
35
35
  },
36
- "gitHead": "f77e0f5e162a1672219b01dbf7c06a3baadd2f35"
36
+ "gitHead": "241b03ee3d3502af3b8d702dabd615b266da10ae"
37
37
  }