@mezo-org/passport 0.3.0 → 0.4.0-dev.1

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.
Files changed (101) hide show
  1. package/dist/src/api/auth.d.ts +73 -0
  2. package/dist/src/api/auth.d.ts.map +1 -0
  3. package/dist/src/api/auth.js +108 -0
  4. package/dist/src/api/auth.js.map +1 -0
  5. package/dist/src/hooks/constants.d.ts +7 -0
  6. package/dist/src/hooks/constants.d.ts.map +1 -0
  7. package/dist/src/hooks/constants.js +7 -0
  8. package/dist/src/hooks/constants.js.map +1 -0
  9. package/dist/src/hooks/index.d.ts +13 -0
  10. package/dist/src/hooks/index.d.ts.map +1 -1
  11. package/dist/src/hooks/index.js +13 -0
  12. package/dist/src/hooks/index.js.map +1 -1
  13. package/dist/src/hooks/useAuthApiClient.d.ts +2 -0
  14. package/dist/src/hooks/useAuthApiClient.d.ts.map +1 -0
  15. package/dist/src/hooks/useAuthApiClient.js +6 -0
  16. package/dist/src/hooks/useAuthApiClient.js.map +1 -0
  17. package/dist/src/hooks/useCreateAccount.d.ts +204 -0
  18. package/dist/src/hooks/useCreateAccount.d.ts.map +1 -0
  19. package/dist/src/hooks/useCreateAccount.js +23 -0
  20. package/dist/src/hooks/useCreateAccount.js.map +1 -0
  21. package/dist/src/hooks/useCreateSession.d.ts +246 -0
  22. package/dist/src/hooks/useCreateSession.d.ts.map +1 -0
  23. package/dist/src/hooks/useCreateSession.js +35 -0
  24. package/dist/src/hooks/useCreateSession.js.map +1 -0
  25. package/dist/src/hooks/useGetAccountByAddress.d.ts +6 -0
  26. package/dist/src/hooks/useGetAccountByAddress.d.ts.map +1 -0
  27. package/dist/src/hooks/useGetAccountByAddress.js +18 -0
  28. package/dist/src/hooks/useGetAccountByAddress.js.map +1 -0
  29. package/dist/src/hooks/useGetAccountByMezoId.d.ts +6 -0
  30. package/dist/src/hooks/useGetAccountByMezoId.d.ts.map +1 -0
  31. package/dist/src/hooks/useGetAccountByMezoId.js +18 -0
  32. package/dist/src/hooks/useGetAccountByMezoId.js.map +1 -0
  33. package/dist/src/hooks/useGetCurrentAccount.d.ts +12 -0
  34. package/dist/src/hooks/useGetCurrentAccount.d.ts.map +1 -0
  35. package/dist/src/hooks/useGetCurrentAccount.js +15 -0
  36. package/dist/src/hooks/useGetCurrentAccount.js.map +1 -0
  37. package/dist/src/hooks/useGetSession.d.ts +21 -0
  38. package/dist/src/hooks/useGetSession.d.ts.map +1 -0
  39. package/dist/src/hooks/useGetSession.js +15 -0
  40. package/dist/src/hooks/useGetSession.js.map +1 -0
  41. package/dist/src/hooks/useLinkAccount.d.ts +178 -0
  42. package/dist/src/hooks/useLinkAccount.d.ts.map +1 -0
  43. package/dist/src/hooks/useLinkAccount.js +32 -0
  44. package/dist/src/hooks/useLinkAccount.js.map +1 -0
  45. package/dist/src/hooks/usePassportContext.d.ts +3 -0
  46. package/dist/src/hooks/usePassportContext.d.ts.map +1 -0
  47. package/dist/src/hooks/usePassportContext.js +10 -0
  48. package/dist/src/hooks/usePassportContext.js.map +1 -0
  49. package/dist/src/hooks/useSignInWithDiscord.d.ts +242 -0
  50. package/dist/src/hooks/useSignInWithDiscord.d.ts.map +1 -0
  51. package/dist/src/hooks/useSignInWithDiscord.js +36 -0
  52. package/dist/src/hooks/useSignInWithDiscord.js.map +1 -0
  53. package/dist/src/hooks/useSignInWithWallet.d.ts +242 -0
  54. package/dist/src/hooks/useSignInWithWallet.d.ts.map +1 -0
  55. package/dist/src/hooks/useSignInWithWallet.js +48 -0
  56. package/dist/src/hooks/useSignInWithWallet.js.map +1 -0
  57. package/dist/src/hooks/useSignOut.d.ts +88 -0
  58. package/dist/src/hooks/useSignOut.d.ts.map +1 -0
  59. package/dist/src/hooks/useSignOut.js +17 -0
  60. package/dist/src/hooks/useSignOut.js.map +1 -0
  61. package/dist/src/hooks/useUpdateMezoId.d.ts +160 -0
  62. package/dist/src/hooks/useUpdateMezoId.d.ts.map +1 -0
  63. package/dist/src/hooks/useUpdateMezoId.js +23 -0
  64. package/dist/src/hooks/useUpdateMezoId.js.map +1 -0
  65. package/dist/src/index.d.ts +1 -0
  66. package/dist/src/index.d.ts.map +1 -1
  67. package/dist/src/index.js +1 -0
  68. package/dist/src/index.js.map +1 -1
  69. package/dist/src/provider.d.ts +20 -0
  70. package/dist/src/provider.d.ts.map +1 -0
  71. package/dist/src/provider.js +25 -0
  72. package/dist/src/provider.js.map +1 -0
  73. package/dist/src/utils/siww.d.ts +4 -0
  74. package/dist/src/utils/siww.d.ts.map +1 -0
  75. package/dist/src/utils/siww.js +19 -0
  76. package/dist/src/utils/siww.js.map +1 -0
  77. package/dist/src/utils/time.d.ts +5 -0
  78. package/dist/src/utils/time.d.ts.map +1 -0
  79. package/dist/src/utils/time.js +5 -0
  80. package/dist/src/utils/time.js.map +1 -0
  81. package/package.json +6 -4
  82. package/src/api/auth.ts +203 -0
  83. package/src/hooks/constants.ts +6 -0
  84. package/src/hooks/index.ts +13 -0
  85. package/src/hooks/useAuthApiClient.ts +6 -0
  86. package/src/hooks/useCreateAccount.ts +27 -0
  87. package/src/hooks/useCreateSession.ts +38 -0
  88. package/src/hooks/useGetAccountByAddress.ts +19 -0
  89. package/src/hooks/useGetAccountByMezoId.ts +19 -0
  90. package/src/hooks/useGetCurrentAccount.ts +16 -0
  91. package/src/hooks/useGetSession.ts +15 -0
  92. package/src/hooks/useLinkAccount.ts +45 -0
  93. package/src/hooks/usePassportContext.ts +11 -0
  94. package/src/hooks/useSignInWithDiscord.ts +44 -0
  95. package/src/hooks/useSignInWithWallet.ts +61 -0
  96. package/src/hooks/useSignOut.ts +19 -0
  97. package/src/hooks/useUpdateMezoId.ts +25 -0
  98. package/src/index.ts +1 -0
  99. package/src/provider.ts +57 -0
  100. package/src/utils/siww.ts +31 -0
  101. package/src/utils/time.ts +4 -0
@@ -0,0 +1,73 @@
1
+ type RequestHandlerOptions = Omit<RequestInit, "credentials" | "body"> & {
2
+ body?: Record<string, unknown>;
3
+ queryParams?: Record<string, string | undefined>;
4
+ };
5
+ type PassportIdentityProvider = "wallet" | "discord" | "email";
6
+ type AccountPublicData = {
7
+ mezoId?: string;
8
+ btcAddress: string;
9
+ evmAddress: string;
10
+ };
11
+ type Account = {
12
+ app_metadata: {
13
+ provider: PassportIdentityProvider;
14
+ providers: PassportIdentityProvider[];
15
+ };
16
+ user_metadata: AccountPublicData;
17
+ };
18
+ type Session = {
19
+ access_token: string;
20
+ token_type: string;
21
+ expires_in: number;
22
+ expires_at: number;
23
+ refresh_token: string;
24
+ user: Account;
25
+ };
26
+ type AuthenticationProviderRedirectResponse = {
27
+ redirectTo: string;
28
+ };
29
+ type WalletAccountCredentials = {
30
+ type: "wallet";
31
+ message: string;
32
+ signature: string;
33
+ };
34
+ export type CreateSessionRequest = WalletAccountCredentials | {
35
+ type: "discord";
36
+ };
37
+ export type LinkAccountRequest = CreateSessionRequest;
38
+ export type CreateAccountRequest = WalletAccountCredentials;
39
+ export declare const API_ENDPOINTS_BY_ENV: {
40
+ mainnet: string;
41
+ testnet: string;
42
+ };
43
+ export declare class AuthApiClient {
44
+ private apiUrl;
45
+ constructor(apiUrl?: string);
46
+ /**
47
+ * The request handler for the Passport API. It accepts an API endpoint and
48
+ * request options.
49
+ * @dev Generic type `D` is a type of returned object from the function
50
+ * @param endpoint - The API endpoint to request. Should start with
51
+ * forward slash ("/")
52
+ * @param {RequestHandlerOptions<B>} options - The request options, the
53
+ * `RequestInit` type with additional type-safe properties
54
+ * @returns The promise of the API response
55
+ */
56
+ protected handleRequest<D>(endpoint: `/${string}`, options: RequestHandlerOptions): Promise<D>;
57
+ getSession(code?: string): Promise<Session | {
58
+ nonce: string;
59
+ }>;
60
+ createSession(createSessionRequest: CreateSessionRequest): Promise<Session | {
61
+ redirectTo: string;
62
+ }>;
63
+ deleteSession(): Promise<{
64
+ message: string;
65
+ }>;
66
+ getCurrentAccount(): Promise<Account>;
67
+ getAccountByMezoIdOrAddress(mezoIdOrAddress: string): Promise<AccountPublicData>;
68
+ linkAccount(linkAccountRequest: LinkAccountRequest): Promise<Account | AuthenticationProviderRedirectResponse>;
69
+ createAccount(createAccountRequest: CreateAccountRequest): Promise<Account>;
70
+ updateMezoId(newMezoId: string): Promise<Account>;
71
+ }
72
+ export {};
73
+ //# sourceMappingURL=auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/api/auth.ts"],"names":[],"mappings":"AAAA,KAAK,qBAAqB,GAAG,IAAI,CAAC,WAAW,EAAE,aAAa,GAAG,MAAM,CAAC,GAAG;IACvE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;CACjD,CAAA;AACD,KAAK,wBAAwB,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAA;AAE9D,KAAK,iBAAiB,GAAG;IACvB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,KAAK,OAAO,GAAG;IACb,YAAY,EAAE;QACZ,QAAQ,EAAE,wBAAwB,CAAA;QAClC,SAAS,EAAE,wBAAwB,EAAE,CAAA;KACtC,CAAA;IACD,aAAa,EAAE,iBAAiB,CAAA;CACjC,CAAA;AAED,KAAK,OAAO,GAAG;IACb,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,OAAO,CAAA;CACd,CAAA;AAED,KAAK,sCAAsC,GAAG;IAC5C,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,KAAK,wBAAwB,GAAG;IAC9B,IAAI,EAAE,QAAQ,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAC5B,wBAAwB,GACxB;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,CAAA;AAEvB,MAAM,MAAM,kBAAkB,GAAG,oBAAoB,CAAA;AAErD,MAAM,MAAM,oBAAoB,GAAG,wBAAwB,CAAA;AAE3D,eAAO,MAAM,oBAAoB;;;CAGhC,CAAA;AAID,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAQ;gBAEV,MAAM,CAAC,EAAE,MAAM;IAI3B;;;;;;;;;OASG;cACa,aAAa,CAAC,CAAC,EAC7B,QAAQ,EAAE,IAAI,MAAM,EAAE,EACtB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,CAAC,CAAC;IA+CP,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM;eAC6B,MAAM;;IAW3D,aAAa,CAAC,oBAAoB,EAAE,oBAAoB;oBACE,MAAM;;IAWhE,aAAa;iBAEN,MAAM;;IAQb,iBAAiB;IAQjB,2BAA2B,CAAC,eAAe,EAAE,MAAM;IAWnD,WAAW,CAAC,kBAAkB,EAAE,kBAAkB;IAWlD,aAAa,CAAC,oBAAoB,EAAE,oBAAoB;IASxD,YAAY,CAAC,SAAS,EAAE,MAAM;CAQrC"}
@@ -0,0 +1,108 @@
1
+ export const API_ENDPOINTS_BY_ENV = {
2
+ mainnet: "https://api.mezo.org",
3
+ testnet: "https://api.test.mezo.org",
4
+ };
5
+ const DEFAULT_API_ENDPOINT = API_ENDPOINTS_BY_ENV.mainnet;
6
+ export class AuthApiClient {
7
+ apiUrl;
8
+ constructor(apiUrl) {
9
+ this.apiUrl = apiUrl ?? DEFAULT_API_ENDPOINT;
10
+ }
11
+ /**
12
+ * The request handler for the Passport API. It accepts an API endpoint and
13
+ * request options.
14
+ * @dev Generic type `D` is a type of returned object from the function
15
+ * @param endpoint - The API endpoint to request. Should start with
16
+ * forward slash ("/")
17
+ * @param {RequestHandlerOptions<B>} options - The request options, the
18
+ * `RequestInit` type with additional type-safe properties
19
+ * @returns The promise of the API response
20
+ */
21
+ async handleRequest(endpoint, options) {
22
+ const { method, headers, body, queryParams = {}, ...restOptions } = options || {};
23
+ // If last character in apiUrl is forward slash we are removing it
24
+ const authApiUrlRoute = this.apiUrl.replace(/\/$/, "");
25
+ const url = new URL(`${authApiUrlRoute}${endpoint}`);
26
+ // Removes falsy values (e.g. null, undefined etc.) from query params and
27
+ // appends remaining ones to the URL
28
+ Object.entries(queryParams)
29
+ .filter(([, value]) => value) // Remove falsy values
30
+ .forEach(([key, value]) => url.searchParams.append(key, value));
31
+ try {
32
+ const response = await fetch(url, {
33
+ method,
34
+ credentials: "include",
35
+ headers: {
36
+ "Content-Type": "application/json",
37
+ ...headers,
38
+ },
39
+ body: body ? JSON.stringify(body) : undefined,
40
+ ...restOptions,
41
+ });
42
+ const data = await response.json();
43
+ if (!response.ok || data?.error) {
44
+ const error = data?.error || "An error occurred";
45
+ throw new Error(error);
46
+ }
47
+ return data;
48
+ }
49
+ catch (error) {
50
+ const errorMessage = error instanceof Error ? error.message : "An error occurred";
51
+ throw new Error(errorMessage);
52
+ }
53
+ }
54
+ async getSession(code) {
55
+ const data = await this.handleRequest("/session", {
56
+ method: "GET",
57
+ queryParams: { code },
58
+ });
59
+ return data;
60
+ }
61
+ async createSession(createSessionRequest) {
62
+ const data = await this.handleRequest("/session", {
63
+ method: "POST",
64
+ body: createSessionRequest,
65
+ });
66
+ return data;
67
+ }
68
+ async deleteSession() {
69
+ const data = await this.handleRequest("/session", {
70
+ method: "DELETE",
71
+ });
72
+ return data;
73
+ }
74
+ async getCurrentAccount() {
75
+ const data = await this.handleRequest("/session/account", {
76
+ method: "GET",
77
+ });
78
+ return data;
79
+ }
80
+ async getAccountByMezoIdOrAddress(mezoIdOrAddress) {
81
+ const data = await this.handleRequest(`/accounts/${mezoIdOrAddress}`, {
82
+ method: "GET",
83
+ });
84
+ return data;
85
+ }
86
+ async linkAccount(linkAccountRequest) {
87
+ const data = await this.handleRequest("/session/account/linked-accounts", {
88
+ method: "POST",
89
+ body: linkAccountRequest,
90
+ });
91
+ return data;
92
+ }
93
+ async createAccount(createAccountRequest) {
94
+ const data = await this.handleRequest("/accounts", {
95
+ method: "POST",
96
+ body: createAccountRequest,
97
+ });
98
+ return data;
99
+ }
100
+ async updateMezoId(newMezoId) {
101
+ const data = await this.handleRequest("/session/account", {
102
+ method: "PATCH",
103
+ body: { newMezoId },
104
+ });
105
+ return data;
106
+ }
107
+ }
108
+ //# sourceMappingURL=auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/api/auth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export declare const QUERY_KEYS: {
2
+ ACCOUNT_BY_ADDRESS: string;
3
+ ACCOUNT_BY_MEZO_ID: string;
4
+ SESSION: string;
5
+ CURRENT_ACCOUNT: string;
6
+ };
7
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/hooks/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU;;;;;CAKtB,CAAA"}
@@ -0,0 +1,7 @@
1
+ export const QUERY_KEYS = {
2
+ ACCOUNT_BY_ADDRESS: "getAccountByAddress",
3
+ ACCOUNT_BY_MEZO_ID: "getAccountByMezoId",
4
+ SESSION: "getSession",
5
+ CURRENT_ACCOUNT: "getCurrentAccount",
6
+ };
7
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/hooks/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,kBAAkB,EAAE,qBAAqB;IACzC,kBAAkB,EAAE,oBAAoB;IACxC,OAAO,EAAE,YAAY;IACrB,eAAe,EAAE,mBAAmB;CACrC,CAAA"}
@@ -1,2 +1,15 @@
1
1
  export { useBitcoinAccount, useSendBitcoin, useSendTransaction, useSubscribeToConnectedToUnsupportedBitcoinAddress, useSubscribeToConnectorEvent, useSubscribeToWalletNetworkDoesNotMatchProviderChain, } from "@mezo-org/orangekit";
2
+ export * from "./constants";
3
+ export * from "./useAuthApiClient";
4
+ export * from "./useCreateAccount";
5
+ export * from "./useGetAccountByAddress";
6
+ export * from "./useGetAccountByMezoId";
7
+ export * from "./useGetCurrentAccount";
8
+ export * from "./useGetSession";
9
+ export * from "./useLinkAccount";
10
+ export * from "./usePassportContext";
11
+ export * from "./useSignInWithDiscord";
12
+ export * from "./useSignInWithWallet";
13
+ export * from "./useSignOut";
14
+ export * from "./useUpdateMezoId";
2
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,kDAAkD,EAClD,4BAA4B,EAC5B,oDAAoD,GACrD,MAAM,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,kDAAkD,EAClD,4BAA4B,EAC5B,oDAAoD,GACrD,MAAM,qBAAqB,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,0BAA0B,CAAA;AACxC,cAAc,yBAAyB,CAAA;AACvC,cAAc,wBAAwB,CAAA;AACtC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,cAAc,CAAA;AAC5B,cAAc,mBAAmB,CAAA"}
@@ -1,2 +1,15 @@
1
1
  export { useBitcoinAccount, useSendBitcoin, useSendTransaction, useSubscribeToConnectedToUnsupportedBitcoinAddress, useSubscribeToConnectorEvent, useSubscribeToWalletNetworkDoesNotMatchProviderChain, } from "@mezo-org/orangekit";
2
+ export * from "./constants";
3
+ export * from "./useAuthApiClient";
4
+ export * from "./useCreateAccount";
5
+ export * from "./useGetAccountByAddress";
6
+ export * from "./useGetAccountByMezoId";
7
+ export * from "./useGetCurrentAccount";
8
+ export * from "./useGetSession";
9
+ export * from "./useLinkAccount";
10
+ export * from "./usePassportContext";
11
+ export * from "./useSignInWithDiscord";
12
+ export * from "./useSignInWithWallet";
13
+ export * from "./useSignOut";
14
+ export * from "./useUpdateMezoId";
2
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,kDAAkD,EAClD,4BAA4B,EAC5B,oDAAoD,GACrD,MAAM,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,kDAAkD,EAClD,4BAA4B,EAC5B,oDAAoD,GACrD,MAAM,qBAAqB,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,0BAA0B,CAAA;AACxC,cAAc,yBAAyB,CAAA;AACvC,cAAc,wBAAwB,CAAA;AACtC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,cAAc,CAAA;AAC5B,cAAc,mBAAmB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare function useAuthApiClient(): import("../api/auth").AuthApiClient;
2
+ //# sourceMappingURL=useAuthApiClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAuthApiClient.d.ts","sourceRoot":"","sources":["../../../src/hooks/useAuthApiClient.ts"],"names":[],"mappings":"AAEA,wBAAgB,gBAAgB,wCAG/B"}
@@ -0,0 +1,6 @@
1
+ import { usePassportContext } from "./usePassportContext";
2
+ export function useAuthApiClient() {
3
+ const { authApiClient } = usePassportContext();
4
+ return authApiClient;
5
+ }
6
+ //# sourceMappingURL=useAuthApiClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAuthApiClient.js","sourceRoot":"","sources":["../../../src/hooks/useAuthApiClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAEzD,MAAM,UAAU,gBAAgB;IAC9B,MAAM,EAAE,aAAa,EAAE,GAAG,kBAAkB,EAAE,CAAA;IAC9C,OAAO,aAAa,CAAA;AACtB,CAAC"}
@@ -0,0 +1,204 @@
1
+ export declare function useCreateAccount(useMutationOptions?: {}): {
2
+ data: undefined;
3
+ variables: undefined;
4
+ error: null;
5
+ isError: false;
6
+ isIdle: true;
7
+ isPending: false;
8
+ isSuccess: false;
9
+ status: "idle";
10
+ reset: () => void;
11
+ context: unknown;
12
+ failureCount: number;
13
+ failureReason: Error | null;
14
+ isPaused: boolean;
15
+ submittedAt: number;
16
+ createAccount: import("@tanstack/react-query").UseMutateFunction<{
17
+ app_metadata: {
18
+ provider: "wallet" | "discord" | "email";
19
+ providers: ("wallet" | "discord" | "email")[];
20
+ };
21
+ user_metadata: {
22
+ mezoId?: string | undefined;
23
+ btcAddress: string;
24
+ evmAddress: string;
25
+ };
26
+ }, Error, {
27
+ type: "wallet";
28
+ message: string;
29
+ signature: string;
30
+ }, unknown>;
31
+ createAccountAsync: import("@tanstack/react-query").UseMutateAsyncFunction<{
32
+ app_metadata: {
33
+ provider: "wallet" | "discord" | "email";
34
+ providers: ("wallet" | "discord" | "email")[];
35
+ };
36
+ user_metadata: {
37
+ mezoId?: string | undefined;
38
+ btcAddress: string;
39
+ evmAddress: string;
40
+ };
41
+ }, Error, {
42
+ type: "wallet";
43
+ message: string;
44
+ signature: string;
45
+ }, unknown>;
46
+ } | {
47
+ data: undefined;
48
+ variables: {
49
+ type: "wallet";
50
+ message: string;
51
+ signature: string;
52
+ };
53
+ error: null;
54
+ isError: false;
55
+ isIdle: false;
56
+ isPending: true;
57
+ isSuccess: false;
58
+ status: "pending";
59
+ reset: () => void;
60
+ context: unknown;
61
+ failureCount: number;
62
+ failureReason: Error | null;
63
+ isPaused: boolean;
64
+ submittedAt: number;
65
+ createAccount: import("@tanstack/react-query").UseMutateFunction<{
66
+ app_metadata: {
67
+ provider: "wallet" | "discord" | "email";
68
+ providers: ("wallet" | "discord" | "email")[];
69
+ };
70
+ user_metadata: {
71
+ mezoId?: string | undefined;
72
+ btcAddress: string;
73
+ evmAddress: string;
74
+ };
75
+ }, Error, {
76
+ type: "wallet";
77
+ message: string;
78
+ signature: string;
79
+ }, unknown>;
80
+ createAccountAsync: import("@tanstack/react-query").UseMutateAsyncFunction<{
81
+ app_metadata: {
82
+ provider: "wallet" | "discord" | "email";
83
+ providers: ("wallet" | "discord" | "email")[];
84
+ };
85
+ user_metadata: {
86
+ mezoId?: string | undefined;
87
+ btcAddress: string;
88
+ evmAddress: string;
89
+ };
90
+ }, Error, {
91
+ type: "wallet";
92
+ message: string;
93
+ signature: string;
94
+ }, unknown>;
95
+ } | {
96
+ data: undefined;
97
+ error: Error;
98
+ variables: {
99
+ type: "wallet";
100
+ message: string;
101
+ signature: string;
102
+ };
103
+ isError: true;
104
+ isIdle: false;
105
+ isPending: false;
106
+ isSuccess: false;
107
+ status: "error";
108
+ reset: () => void;
109
+ context: unknown;
110
+ failureCount: number;
111
+ failureReason: Error | null;
112
+ isPaused: boolean;
113
+ submittedAt: number;
114
+ createAccount: import("@tanstack/react-query").UseMutateFunction<{
115
+ app_metadata: {
116
+ provider: "wallet" | "discord" | "email";
117
+ providers: ("wallet" | "discord" | "email")[];
118
+ };
119
+ user_metadata: {
120
+ mezoId?: string | undefined;
121
+ btcAddress: string;
122
+ evmAddress: string;
123
+ };
124
+ }, Error, {
125
+ type: "wallet";
126
+ message: string;
127
+ signature: string;
128
+ }, unknown>;
129
+ createAccountAsync: import("@tanstack/react-query").UseMutateAsyncFunction<{
130
+ app_metadata: {
131
+ provider: "wallet" | "discord" | "email";
132
+ providers: ("wallet" | "discord" | "email")[];
133
+ };
134
+ user_metadata: {
135
+ mezoId?: string | undefined;
136
+ btcAddress: string;
137
+ evmAddress: string;
138
+ };
139
+ }, Error, {
140
+ type: "wallet";
141
+ message: string;
142
+ signature: string;
143
+ }, unknown>;
144
+ } | {
145
+ data: {
146
+ app_metadata: {
147
+ provider: "wallet" | "discord" | "email";
148
+ providers: ("wallet" | "discord" | "email")[];
149
+ };
150
+ user_metadata: {
151
+ mezoId?: string | undefined;
152
+ btcAddress: string;
153
+ evmAddress: string;
154
+ };
155
+ };
156
+ error: null;
157
+ variables: {
158
+ type: "wallet";
159
+ message: string;
160
+ signature: string;
161
+ };
162
+ isError: false;
163
+ isIdle: false;
164
+ isPending: false;
165
+ isSuccess: true;
166
+ status: "success";
167
+ reset: () => void;
168
+ context: unknown;
169
+ failureCount: number;
170
+ failureReason: Error | null;
171
+ isPaused: boolean;
172
+ submittedAt: number;
173
+ createAccount: import("@tanstack/react-query").UseMutateFunction<{
174
+ app_metadata: {
175
+ provider: "wallet" | "discord" | "email";
176
+ providers: ("wallet" | "discord" | "email")[];
177
+ };
178
+ user_metadata: {
179
+ mezoId?: string | undefined;
180
+ btcAddress: string;
181
+ evmAddress: string;
182
+ };
183
+ }, Error, {
184
+ type: "wallet";
185
+ message: string;
186
+ signature: string;
187
+ }, unknown>;
188
+ createAccountAsync: import("@tanstack/react-query").UseMutateAsyncFunction<{
189
+ app_metadata: {
190
+ provider: "wallet" | "discord" | "email";
191
+ providers: ("wallet" | "discord" | "email")[];
192
+ };
193
+ user_metadata: {
194
+ mezoId?: string | undefined;
195
+ btcAddress: string;
196
+ evmAddress: string;
197
+ };
198
+ }, Error, {
199
+ type: "wallet";
200
+ message: string;
201
+ signature: string;
202
+ }, unknown>;
203
+ };
204
+ //# sourceMappingURL=useCreateAccount.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCreateAccount.d.ts","sourceRoot":"","sources":["../../../src/hooks/useCreateAccount.ts"],"names":[],"mappings":"AAKA,wBAAgB,gBAAgB,CAAC,kBAAkB,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqBvD"}
@@ -0,0 +1,23 @@
1
+ import { useQueryClient, useMutation } from "@tanstack/react-query";
2
+ import { useAuthApiClient } from "./useAuthApiClient";
3
+ import { QUERY_KEYS } from "./constants";
4
+ export function useCreateAccount(useMutationOptions = {}) {
5
+ const queryClient = useQueryClient();
6
+ const authApiClient = useAuthApiClient();
7
+ const { mutate, mutateAsync, ...rest } = useMutation({
8
+ mutationFn: (createAccountRequest) => authApiClient.createAccount(createAccountRequest),
9
+ onSuccess: () => {
10
+ queryClient.resetQueries({
11
+ queryKey: [QUERY_KEYS.ACCOUNT_BY_ADDRESS],
12
+ exact: false,
13
+ });
14
+ queryClient.resetQueries({
15
+ queryKey: [QUERY_KEYS.ACCOUNT_BY_MEZO_ID],
16
+ exact: false,
17
+ });
18
+ },
19
+ ...useMutationOptions,
20
+ });
21
+ return { createAccount: mutate, createAccountAsync: mutateAsync, ...rest };
22
+ }
23
+ //# sourceMappingURL=useCreateAccount.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCreateAccount.js","sourceRoot":"","sources":["../../../src/hooks/useCreateAccount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAGxC,MAAM,UAAU,gBAAgB,CAAC,kBAAkB,GAAG,EAAE;IACtD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IACpC,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAA;IAExC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,EAAE,GAAG,WAAW,CAAC;QACnD,UAAU,EAAE,CAAC,oBAA0C,EAAE,EAAE,CACzD,aAAa,CAAC,aAAa,CAAC,oBAAoB,CAAC;QACnD,SAAS,EAAE,GAAG,EAAE;YACd,WAAW,CAAC,YAAY,CAAC;gBACvB,QAAQ,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC;gBACzC,KAAK,EAAE,KAAK;aACb,CAAC,CAAA;YACF,WAAW,CAAC,YAAY,CAAC;gBACvB,QAAQ,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC;gBACzC,KAAK,EAAE,KAAK;aACb,CAAC,CAAA;QACJ,CAAC;QACD,GAAG,kBAAkB;KACtB,CAAC,CAAA;IAEF,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,kBAAkB,EAAE,WAAW,EAAE,GAAG,IAAI,EAAE,CAAA;AAC5E,CAAC"}