@getpara/core-sdk 2.12.0 → 2.13.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.
Files changed (197) hide show
  1. package/dist/cjs/ParaCore.js +793 -2003
  2. package/dist/cjs/constants.js +4 -1
  3. package/dist/cjs/services/AuthService.js +787 -0
  4. package/dist/cjs/services/BaseAuthFlowService.js +78 -0
  5. package/dist/cjs/services/ExternalWalletService.js +386 -0
  6. package/dist/cjs/services/LoginFlowService.js +163 -0
  7. package/dist/cjs/services/PollingService.js +448 -0
  8. package/dist/cjs/services/PortalUrlService.js +379 -0
  9. package/dist/cjs/services/PregenWalletService.js +442 -0
  10. package/dist/cjs/services/SessionManagementService.js +280 -0
  11. package/dist/cjs/services/SignupFlowService.js +185 -0
  12. package/dist/cjs/services/VerificationFlowService.js +242 -0
  13. package/dist/cjs/services/WalletService.js +577 -0
  14. package/dist/cjs/services/types/AuthServiceTypes.js +15 -0
  15. package/dist/cjs/services/types/BaseAuthFlowServiceTypes.js +15 -0
  16. package/dist/cjs/services/types/ExternalWalletServiceTypes.js +15 -0
  17. package/dist/cjs/services/types/LoginFlowServiceTypes.js +15 -0
  18. package/dist/cjs/services/types/PollingServiceTypes.js +15 -0
  19. package/dist/cjs/services/types/PortalUrlServiceTypes.js +15 -0
  20. package/dist/cjs/services/types/PregenWalletServiceTypes.js +15 -0
  21. package/dist/cjs/services/types/SessionManagementServiceTypes.js +15 -0
  22. package/dist/cjs/services/types/SignupFlowServiceTypes.js +15 -0
  23. package/dist/cjs/services/types/VerificationFlowServiceTypes.js +15 -0
  24. package/dist/cjs/services/types/WalletServiceTypes.js +15 -0
  25. package/dist/cjs/services/types/index.js +15 -0
  26. package/dist/cjs/state/CoreStateManager.js +297 -0
  27. package/dist/cjs/state/actors/authenticateWithEmailOrPhone.js +50 -0
  28. package/dist/cjs/state/actors/authenticateWithExternalWallet.js +50 -0
  29. package/dist/cjs/state/actors/authenticateWithFarcaster.js +50 -0
  30. package/dist/cjs/state/actors/authenticateWithFarcasterLegacy.js +50 -0
  31. package/dist/cjs/state/actors/authenticateWithTelegram.js +50 -0
  32. package/dist/cjs/state/actors/authenticateWithTelegramLegacy.js +50 -0
  33. package/dist/cjs/state/actors/checkUserState.js +53 -0
  34. package/dist/cjs/state/actors/claimWallets.js +56 -0
  35. package/dist/cjs/state/actors/connectExternalConnectors.js +54 -0
  36. package/dist/cjs/state/actors/connectExternalWallet.js +50 -0
  37. package/dist/cjs/state/actors/createGuestWallets.js +50 -0
  38. package/dist/cjs/state/actors/createWallets.js +73 -0
  39. package/dist/cjs/state/actors/polling.js +91 -0
  40. package/dist/cjs/state/actors/processAuthentication.js +50 -0
  41. package/dist/cjs/state/actors/setupAfterLogin.js +52 -0
  42. package/dist/cjs/state/actors/setupPara.js +50 -0
  43. package/dist/cjs/state/actors/signExternalWalletVerification.js +79 -0
  44. package/dist/cjs/state/actors/switchExternalWallet.js +50 -0
  45. package/dist/cjs/state/actors/verifyExternalWallet.js +50 -0
  46. package/dist/cjs/state/actors/verifyNewAccount.js +50 -0
  47. package/dist/cjs/state/actors/waitForExternalWalletProviders.js +54 -0
  48. package/dist/cjs/state/machines/authStateMachine.helpers.js +137 -0
  49. package/dist/cjs/state/machines/authStateMachine.js +1084 -0
  50. package/dist/cjs/state/machines/coreStateMachine.js +383 -0
  51. package/dist/cjs/state/machines/walletStateMachine.js +437 -0
  52. package/dist/cjs/state/types/auth.js +15 -0
  53. package/dist/cjs/state/types/core.js +15 -0
  54. package/dist/cjs/state/types/wallet.js +15 -0
  55. package/dist/cjs/types/{auth.js → accountLinking.js} +3 -3
  56. package/dist/cjs/types/authState.js +15 -0
  57. package/dist/cjs/types/coreApi.js +3 -1
  58. package/dist/cjs/types/index.js +2 -2
  59. package/dist/cjs/types/serviceInterfaces.js +15 -0
  60. package/dist/cjs/types/util.js +15 -0
  61. package/dist/cjs/utils/formatting.js +6 -0
  62. package/dist/cjs/utils/retryBackoff.js +30 -0
  63. package/dist/cjs/utils/stateErrorHelpers.js +60 -0
  64. package/dist/cjs/utils/stateListener.js +129 -0
  65. package/dist/esm/ParaCore.js +796 -2031
  66. package/dist/esm/constants.js +3 -1
  67. package/dist/esm/services/AuthService.js +717 -0
  68. package/dist/esm/services/BaseAuthFlowService.js +25 -0
  69. package/dist/esm/services/ExternalWalletService.js +327 -0
  70. package/dist/esm/services/LoginFlowService.js +97 -0
  71. package/dist/esm/services/PollingService.js +389 -0
  72. package/dist/esm/services/PortalUrlService.js +320 -0
  73. package/dist/esm/services/PregenWalletService.js +393 -0
  74. package/dist/esm/services/SessionManagementService.js +236 -0
  75. package/dist/esm/services/SignupFlowService.js +119 -0
  76. package/dist/esm/services/VerificationFlowService.js +178 -0
  77. package/dist/esm/services/WalletService.js +514 -0
  78. package/dist/esm/services/types/AuthServiceTypes.js +0 -0
  79. package/dist/esm/services/types/BaseAuthFlowServiceTypes.js +0 -0
  80. package/dist/esm/services/types/ExternalWalletServiceTypes.js +0 -0
  81. package/dist/esm/services/types/LoginFlowServiceTypes.js +0 -0
  82. package/dist/esm/services/types/PollingServiceTypes.js +0 -0
  83. package/dist/esm/services/types/PortalUrlServiceTypes.js +0 -0
  84. package/dist/esm/services/types/PregenWalletServiceTypes.js +0 -0
  85. package/dist/esm/services/types/SessionManagementServiceTypes.js +0 -0
  86. package/dist/esm/services/types/SignupFlowServiceTypes.js +0 -0
  87. package/dist/esm/services/types/VerificationFlowServiceTypes.js +0 -0
  88. package/dist/esm/services/types/WalletServiceTypes.js +0 -0
  89. package/dist/esm/services/types/index.js +0 -0
  90. package/dist/esm/state/CoreStateManager.js +261 -0
  91. package/dist/esm/state/actors/authenticateWithEmailOrPhone.js +10 -0
  92. package/dist/esm/state/actors/authenticateWithExternalWallet.js +10 -0
  93. package/dist/esm/state/actors/authenticateWithFarcaster.js +10 -0
  94. package/dist/esm/state/actors/authenticateWithFarcasterLegacy.js +10 -0
  95. package/dist/esm/state/actors/authenticateWithTelegram.js +10 -0
  96. package/dist/esm/state/actors/authenticateWithTelegramLegacy.js +10 -0
  97. package/dist/esm/state/actors/checkUserState.js +13 -0
  98. package/dist/esm/state/actors/claimWallets.js +16 -0
  99. package/dist/esm/state/actors/connectExternalConnectors.js +14 -0
  100. package/dist/esm/state/actors/connectExternalWallet.js +10 -0
  101. package/dist/esm/state/actors/createGuestWallets.js +10 -0
  102. package/dist/esm/state/actors/createWallets.js +20 -0
  103. package/dist/esm/state/actors/polling.js +55 -0
  104. package/dist/esm/state/actors/processAuthentication.js +10 -0
  105. package/dist/esm/state/actors/setupAfterLogin.js +12 -0
  106. package/dist/esm/state/actors/setupPara.js +10 -0
  107. package/dist/esm/state/actors/signExternalWalletVerification.js +15 -0
  108. package/dist/esm/state/actors/switchExternalWallet.js +10 -0
  109. package/dist/esm/state/actors/verifyExternalWallet.js +10 -0
  110. package/dist/esm/state/actors/verifyNewAccount.js +10 -0
  111. package/dist/esm/state/actors/waitForExternalWalletProviders.js +14 -0
  112. package/dist/esm/state/machines/authStateMachine.helpers.js +92 -0
  113. package/dist/esm/state/machines/authStateMachine.js +1039 -0
  114. package/dist/esm/state/machines/coreStateMachine.js +343 -0
  115. package/dist/esm/state/machines/walletStateMachine.js +382 -0
  116. package/dist/esm/state/types/auth.js +0 -0
  117. package/dist/esm/state/types/core.js +0 -0
  118. package/dist/esm/state/types/wallet.js +0 -0
  119. package/dist/esm/types/authState.js +0 -0
  120. package/dist/esm/types/coreApi.js +3 -1
  121. package/dist/esm/types/index.js +1 -1
  122. package/dist/esm/types/serviceInterfaces.js +0 -0
  123. package/dist/esm/types/util.js +0 -0
  124. package/dist/esm/utils/formatting.js +6 -0
  125. package/dist/esm/utils/retryBackoff.js +7 -0
  126. package/dist/esm/utils/stateErrorHelpers.js +37 -0
  127. package/dist/esm/utils/stateListener.js +106 -0
  128. package/dist/types/ParaCore.d.ts +190 -119
  129. package/dist/types/PlatformUtils.d.ts +23 -0
  130. package/dist/types/constants.d.ts +1 -0
  131. package/dist/types/index.d.ts +4 -2
  132. package/dist/types/services/AuthService.d.ts +72 -0
  133. package/dist/types/services/BaseAuthFlowService.d.ts +28 -0
  134. package/dist/types/services/ExternalWalletService.d.ts +44 -0
  135. package/dist/types/services/LoginFlowService.d.ts +9 -0
  136. package/dist/types/services/PollingService.d.ts +35 -0
  137. package/dist/types/services/PortalUrlService.d.ts +26 -0
  138. package/dist/types/services/PregenWalletService.d.ts +38 -0
  139. package/dist/types/services/SessionManagementService.d.ts +28 -0
  140. package/dist/types/services/SignupFlowService.d.ts +10 -0
  141. package/dist/types/services/VerificationFlowService.d.ts +17 -0
  142. package/dist/types/services/WalletService.d.ts +54 -0
  143. package/dist/types/services/types/AuthServiceTypes.d.ts +147 -0
  144. package/dist/types/services/types/BaseAuthFlowServiceTypes.d.ts +4 -0
  145. package/dist/types/services/types/ExternalWalletServiceTypes.d.ts +67 -0
  146. package/dist/types/services/types/LoginFlowServiceTypes.d.ts +19 -0
  147. package/dist/types/services/types/PollingServiceTypes.d.ts +82 -0
  148. package/dist/types/services/types/PortalUrlServiceTypes.d.ts +46 -0
  149. package/dist/types/services/types/PregenWalletServiceTypes.d.ts +73 -0
  150. package/dist/types/services/types/SessionManagementServiceTypes.d.ts +27 -0
  151. package/dist/types/services/types/SignupFlowServiceTypes.d.ts +18 -0
  152. package/dist/types/services/types/VerificationFlowServiceTypes.d.ts +90 -0
  153. package/dist/types/services/types/WalletServiceTypes.d.ts +109 -0
  154. package/dist/types/services/types/index.d.ts +11 -0
  155. package/dist/types/state/CoreStateManager.d.ts +36 -0
  156. package/dist/types/state/actors/authenticateWithEmailOrPhone.d.ts +8 -0
  157. package/dist/types/state/actors/authenticateWithExternalWallet.d.ts +8 -0
  158. package/dist/types/state/actors/authenticateWithFarcaster.d.ts +3 -0
  159. package/dist/types/state/actors/authenticateWithFarcasterLegacy.d.ts +3 -0
  160. package/dist/types/state/actors/authenticateWithTelegram.d.ts +3 -0
  161. package/dist/types/state/actors/authenticateWithTelegramLegacy.d.ts +8 -0
  162. package/dist/types/state/actors/checkUserState.d.ts +6 -0
  163. package/dist/types/state/actors/claimWallets.d.ts +8 -0
  164. package/dist/types/state/actors/connectExternalConnectors.d.ts +4 -0
  165. package/dist/types/state/actors/connectExternalWallet.d.ts +3 -0
  166. package/dist/types/state/actors/createGuestWallets.d.ts +3 -0
  167. package/dist/types/state/actors/createWallets.d.ts +10 -0
  168. package/dist/types/state/actors/polling.d.ts +3 -0
  169. package/dist/types/state/actors/processAuthentication.d.ts +10 -0
  170. package/dist/types/state/actors/setupAfterLogin.d.ts +5 -0
  171. package/dist/types/state/actors/setupPara.d.ts +2 -0
  172. package/dist/types/state/actors/signExternalWalletVerification.d.ts +7 -0
  173. package/dist/types/state/actors/switchExternalWallet.d.ts +3 -0
  174. package/dist/types/state/actors/verifyExternalWallet.d.ts +8 -0
  175. package/dist/types/state/actors/verifyNewAccount.d.ts +8 -0
  176. package/dist/types/state/actors/waitForExternalWalletProviders.d.ts +2 -0
  177. package/dist/types/state/machines/authStateMachine.d.ts +2570 -0
  178. package/dist/types/state/machines/authStateMachine.helpers.d.ts +57 -0
  179. package/dist/types/state/machines/coreStateMachine.d.ts +22033 -0
  180. package/dist/types/state/machines/walletStateMachine.d.ts +1049 -0
  181. package/dist/types/state/types/auth.d.ts +113 -0
  182. package/dist/types/state/types/core.d.ts +114 -0
  183. package/dist/types/state/types/wallet.d.ts +76 -0
  184. package/dist/types/types/authState.d.ts +66 -0
  185. package/dist/types/types/config.d.ts +5 -0
  186. package/dist/types/types/coreApi.d.ts +148 -298
  187. package/dist/types/types/index.d.ts +3 -1
  188. package/dist/types/types/methods.d.ts +1 -191
  189. package/dist/types/types/serviceInterfaces.d.ts +125 -0
  190. package/dist/types/types/util.d.ts +43 -0
  191. package/dist/types/types/wallet.d.ts +3 -1
  192. package/dist/types/utils/retryBackoff.d.ts +2 -0
  193. package/dist/types/utils/stateErrorHelpers.d.ts +2 -0
  194. package/dist/types/utils/stateListener.d.ts +47 -0
  195. package/package.json +5 -4
  196. /package/dist/esm/types/{auth.js → accountLinking.js} +0 -0
  197. /package/dist/types/types/{auth.d.ts → accountLinking.d.ts} +0 -0
@@ -0,0 +1,717 @@
1
+ import {
2
+ __async,
3
+ __objRest,
4
+ __privateAdd,
5
+ __privateGet,
6
+ __privateSet,
7
+ __spreadProps,
8
+ __spreadValues
9
+ } from "../chunk-7B52C2XE.js";
10
+ var _stateManager, _loginFlowService, _signupFlowService, _verificationFlowService, _externalWalletService, _pregenWalletService, _sessionManagementService, _portalUrlService, _paraCoreInterface, _authInfo, _isEnclaveUser;
11
+ import {
12
+ AuthMethod,
13
+ AuthMethodStatus,
14
+ extractAuthInfo,
15
+ isEmail,
16
+ isExternalWallet,
17
+ isFarcaster,
18
+ isPhone,
19
+ isTelegram,
20
+ PublicKeyType
21
+ } from "@getpara/user-management-client";
22
+ import * as constants from "../constants.js";
23
+ import { LoginFlowService } from "./LoginFlowService.js";
24
+ import { VerificationFlowService } from "./VerificationFlowService.js";
25
+ import { SignupFlowService } from "./SignupFlowService.js";
26
+ import { waitForAuthStateChange } from "../utils/stateListener.js";
27
+ class AuthService {
28
+ constructor(paraCore) {
29
+ __privateAdd(this, _stateManager);
30
+ __privateAdd(this, _loginFlowService);
31
+ __privateAdd(this, _signupFlowService);
32
+ __privateAdd(this, _verificationFlowService);
33
+ __privateAdd(this, _externalWalletService);
34
+ __privateAdd(this, _pregenWalletService);
35
+ __privateAdd(this, _sessionManagementService);
36
+ __privateAdd(this, _portalUrlService);
37
+ __privateAdd(this, _paraCoreInterface);
38
+ __privateAdd(this, _authInfo);
39
+ __privateAdd(this, _isEnclaveUser, false);
40
+ this.init = ({
41
+ stateManager,
42
+ portalUrlService,
43
+ externalWalletService,
44
+ sessionManagementService,
45
+ pregenWalletService,
46
+ walletService
47
+ }) => {
48
+ __privateSet(this, _stateManager, stateManager);
49
+ __privateSet(this, _externalWalletService, externalWalletService);
50
+ __privateSet(this, _portalUrlService, portalUrlService);
51
+ __privateSet(this, _sessionManagementService, sessionManagementService);
52
+ __privateSet(this, _pregenWalletService, pregenWalletService);
53
+ __privateSet(this, _loginFlowService, new LoginFlowService(__privateGet(this, _paraCoreInterface), stateManager, {
54
+ portalUrlService,
55
+ walletService,
56
+ sessionManagementService,
57
+ externalWalletService,
58
+ authService: this
59
+ }));
60
+ __privateSet(this, _signupFlowService, new SignupFlowService(__privateGet(this, _paraCoreInterface), stateManager, {
61
+ portalUrlService,
62
+ walletService,
63
+ sessionManagementService,
64
+ externalWalletService,
65
+ authService: this
66
+ }));
67
+ __privateSet(this, _verificationFlowService, new VerificationFlowService(__privateGet(this, _paraCoreInterface), stateManager, {
68
+ portalUrlService,
69
+ walletService,
70
+ sessionManagementService,
71
+ externalWalletService,
72
+ authService: this
73
+ }));
74
+ };
75
+ this.prepareLogin = () => __async(this, null, function* () {
76
+ yield __privateGet(this, _paraCoreInterface).logout({ skipStateReset: true });
77
+ const { sessionLookupId } = yield __privateGet(this, _sessionManagementService).touchSession(true);
78
+ if (!__privateGet(this, _paraCoreInterface).loginEncryptionKeyPair) {
79
+ yield __privateGet(this, _paraCoreInterface).setLoginEncryptionKeyPair();
80
+ }
81
+ return sessionLookupId;
82
+ });
83
+ this.setAuth = (_0, ..._1) => __async(this, [_0, ..._1], function* (auth, { extras = {}, userId } = {}) {
84
+ const authInfo = __spreadValues(__spreadValues({}, extractAuthInfo(auth, { isRequired: true })), extras || {});
85
+ yield this.setAuthInfo(authInfo);
86
+ if (!!userId) {
87
+ yield this.setUserId(userId);
88
+ }
89
+ return this.authInfo;
90
+ });
91
+ this.setAuthInfo = (authInfo) => __async(this, null, function* () {
92
+ this.authInfo = authInfo;
93
+ yield __privateGet(this, _paraCoreInterface).localStorageSetItem(constants.LOCAL_STORAGE_AUTH_INFO, JSON.stringify(authInfo));
94
+ yield __privateGet(this, _paraCoreInterface).localStorageRemoveItem(constants.LOCAL_STORAGE_EMAIL);
95
+ yield __privateGet(this, _paraCoreInterface).localStorageRemoveItem(constants.LOCAL_STORAGE_PHONE);
96
+ yield __privateGet(this, _paraCoreInterface).localStorageRemoveItem(constants.LOCAL_STORAGE_COUNTRY_CODE);
97
+ yield __privateGet(this, _paraCoreInterface).localStorageRemoveItem(constants.LOCAL_STORAGE_FARCASTER_USERNAME);
98
+ yield __privateGet(this, _paraCoreInterface).localStorageRemoveItem(constants.LOCAL_STORAGE_TELEGRAM_USER_ID);
99
+ });
100
+ this.setUserId = (userId) => __async(this, null, function* () {
101
+ this.userId = userId;
102
+ yield __privateGet(this, _paraCoreInterface).localStorageSetItem(constants.LOCAL_STORAGE_USER_ID, userId);
103
+ });
104
+ this.assertIsAuthSet = (allowed) => {
105
+ if (!this.authInfo) {
106
+ throw new Error("auth is not set");
107
+ }
108
+ if (allowed && !allowed.includes(this.authInfo.authType)) {
109
+ throw new Error(`invalid auth type, expected ${allowed.join(", ")}`);
110
+ }
111
+ return this.authInfo;
112
+ };
113
+ this.assertUserId = ({ allowGuestMode = false } = {}) => {
114
+ if (!this.userId || !allowGuestMode && __privateGet(this, _pregenWalletService).isGuestMode) {
115
+ throw new Error("no userId is set");
116
+ }
117
+ return this.userId;
118
+ };
119
+ this.prepareAuthState = (_0, ..._1) => __async(this, [_0, ..._1], function* (serverAuthState, opts = {}) {
120
+ var _a, _b, _c;
121
+ if (!opts.sessionLookupId && serverAuthState.stage === "login" && (!serverAuthState.externalWallet || !(((_a = serverAuthState.externalWallet) == null ? void 0 : _a.withFullParaAuth) && ((_b = serverAuthState.loginAuthMethods) == null ? void 0 : _b.includes(AuthMethod.PIN))))) {
122
+ opts.sessionLookupId = yield this.prepareLogin();
123
+ }
124
+ const { auth, externalWallet, userId, displayName, pfpUrl, username } = serverAuthState;
125
+ const authInfo = __spreadValues(__spreadValues({}, extractAuthInfo(auth, { isRequired: true })), Object.fromEntries(
126
+ Object.entries({
127
+ displayName,
128
+ pfpUrl,
129
+ username,
130
+ externalWallet
131
+ }).filter(([_, v]) => !!v)
132
+ ));
133
+ yield this.setAuthInfo(authInfo);
134
+ this.assertIsAuthSet();
135
+ if (!!externalWallet) {
136
+ yield __privateGet(this, _externalWalletService).setExternalWallet({ externalWallet: [externalWallet] });
137
+ }
138
+ if (!!userId) {
139
+ yield this.setUserId(userId);
140
+ }
141
+ switch (serverAuthState.stage) {
142
+ case "login":
143
+ if (externalWallet && !(externalWallet == null ? void 0 : externalWallet.withFullParaAuth)) {
144
+ return serverAuthState;
145
+ }
146
+ return yield __privateGet(this, _loginFlowService).prepareState(serverAuthState, opts);
147
+ case "signup":
148
+ if (externalWallet && !(externalWallet == null ? void 0 : externalWallet.withFullParaAuth)) {
149
+ return serverAuthState;
150
+ }
151
+ return yield __privateGet(this, _signupFlowService).prepareState(serverAuthState, opts);
152
+ case "verify":
153
+ return yield __privateGet(this, _verificationFlowService).prepareState(serverAuthState, __spreadProps(__spreadValues({}, opts), {
154
+ sessionLookupId: opts.sessionLookupId
155
+ }));
156
+ case "done":
157
+ if ((_c = serverAuthState.externalWallet) == null ? void 0 : _c.isConnectionOnly) {
158
+ return serverAuthState;
159
+ }
160
+ let isSLOPossible = serverAuthState.authMethods.includes(AuthMethod.BASIC_LOGIN);
161
+ this.isEnclaveUser = isSLOPossible;
162
+ yield __privateGet(this, _paraCoreInterface).localStorageSetItem(
163
+ constants.LOCAL_STORAGE_IS_ENCLAVE_USER,
164
+ JSON.stringify(isSLOPossible)
165
+ );
166
+ return serverAuthState;
167
+ }
168
+ });
169
+ this.prepareLoginState = (_0, _1) => __async(this, [_0, _1], function* (loginState, { useShortUrls: shorten = false, portalTheme, sessionLookupId }) {
170
+ return yield __privateGet(this, _loginFlowService).prepareState(loginState, {
171
+ useShortUrls: shorten,
172
+ portalTheme,
173
+ sessionLookupId
174
+ });
175
+ });
176
+ this.performSignUpOrLogIn = (params) => __async(this, null, function* () {
177
+ const _a = params, { auth } = _a, urlOptions = __objRest(_a, ["auth"]);
178
+ try {
179
+ const serverAuthState = yield __privateGet(this, _paraCoreInterface).ctx.client.signUpOrLogIn(__spreadValues(__spreadValues({}, auth), __privateGet(this, _paraCoreInterface).getVerificationEmailProps()));
180
+ return { authState: serverAuthState, opts: urlOptions };
181
+ } catch (error) {
182
+ if (error.message.includes("max beta users reached")) {
183
+ __privateGet(this, _paraCoreInterface).displayModalError(
184
+ `50 user limit reached. [Go to Production.](https://docs.getpara.com/v2/general/checklist#go-live-checklist)`
185
+ );
186
+ }
187
+ throw error;
188
+ }
189
+ });
190
+ this.signUpOrLogIn = (params) => __async(this, null, function* () {
191
+ __privateGet(this, _stateManager).send({ type: "AUTHENTICATE_EMAIL_PHONE", data: __spreadProps(__spreadValues({}, params), { isLegacy: true }) });
192
+ return yield waitForAuthStateChange({
193
+ stateManager: __privateGet(this, _stateManager),
194
+ resolvePhases: [
195
+ { phase: "awaiting_session_start", onPhase: (state) => state.authStateResult },
196
+ {
197
+ phase: "awaiting_account_verification",
198
+ onPhase: (state) => state.authStateResult
199
+ }
200
+ ]
201
+ });
202
+ });
203
+ this.authenticateWithEmailOrPhone = (params) => __async(this, null, function* () {
204
+ __privateGet(this, _stateManager).send({ type: "AUTHENTICATE_EMAIL_PHONE", data: __spreadProps(__spreadValues({}, params), { isLegacy: false }) });
205
+ const authState = yield waitForAuthStateChange({
206
+ stateManager: __privateGet(this, _stateManager),
207
+ resolvePhases: [
208
+ // awaiting_session_start will be hit for non-SLO logins & all SLO logins/sign ups
209
+ { phase: "awaiting_session_start", onPhase: (state) => state.authStateResult },
210
+ // awaiting_account_verification will be hit for non-SLO sign ups
211
+ {
212
+ phase: "awaiting_account_verification",
213
+ onPhase: (state) => state.authStateResult
214
+ }
215
+ ],
216
+ rejectPhases: [
217
+ {
218
+ phase: "unauthenticated",
219
+ onPhase: () => new Error("Authentication canceled")
220
+ }
221
+ ]
222
+ });
223
+ if (authState.stage === "verify") {
224
+ const isSLO = !!authState.loginUrl;
225
+ if (!isSLO) {
226
+ yield waitForAuthStateChange({
227
+ stateManager: __privateGet(this, _stateManager),
228
+ resolvePhases: [{ phase: "awaiting_session_start", onPhase: (state) => state.authStateResult }],
229
+ // Only reject if we get to an error phase, account verification can be retried while an error is present and we don't want to cancel the flow in that case
230
+ rejectInErrorPhaseOnly: true,
231
+ rejectPhases: [
232
+ {
233
+ phase: "unauthenticated",
234
+ onPhase: () => new Error("Authentication canceled")
235
+ }
236
+ ]
237
+ });
238
+ }
239
+ }
240
+ __privateGet(this, _stateManager).send({
241
+ type: "WAIT_FOR_SESSION",
242
+ data: __spreadProps(__spreadValues({}, params.sessionPollingCallbacks), { autoCreateWallets: true })
243
+ });
244
+ const resp = yield waitForAuthStateChange({
245
+ stateManager: __privateGet(this, _stateManager),
246
+ resolvePhases: [
247
+ {
248
+ phase: "authenticated",
249
+ onPhase: (state) => {
250
+ const createdWallets = state.newWalletsResult;
251
+ if (createdWallets) {
252
+ return {
253
+ hasCreatedWallets: true,
254
+ recoverySecret: state.newWalletsResult.recoverySecret
255
+ };
256
+ }
257
+ return {
258
+ hasCreatedWallets: false,
259
+ recoverySecret: void 0
260
+ };
261
+ }
262
+ }
263
+ ],
264
+ rejectPhases: [
265
+ {
266
+ phase: "unauthenticated",
267
+ onPhase: () => new Error("Session waiting canceled")
268
+ }
269
+ ],
270
+ waitForCoreAuthenticated: true
271
+ });
272
+ return __spreadValues({ authInfo: this.authInfo }, resp);
273
+ });
274
+ this.performVerifyNewAccount = (params) => __async(this, null, function* () {
275
+ return yield __privateGet(this, _verificationFlowService).performVerifyNewAccount(params);
276
+ });
277
+ this.verifyNewAccount = (params) => __async(this, null, function* () {
278
+ return yield __privateGet(this, _verificationFlowService).verifyNewAccount(params);
279
+ });
280
+ this.waitForLogin = (params) => __async(this, null, function* () {
281
+ return yield __privateGet(this, _loginFlowService).waitForLogin(params);
282
+ });
283
+ this.waitForSignup = (params) => __async(this, null, function* () {
284
+ return yield __privateGet(this, _signupFlowService).waitForSignup(params);
285
+ });
286
+ this.waitForWalletCreation = (params) => __async(this, null, function* () {
287
+ return yield __privateGet(this, _signupFlowService).waitForWalletCreation(params);
288
+ });
289
+ this.performVerifyExternalWallet = (params) => __async(this, null, function* () {
290
+ return yield __privateGet(this, _verificationFlowService).performVerifyExternalWallet(params);
291
+ });
292
+ this.verifyExternalWallet = (params) => __async(this, null, function* () {
293
+ return yield __privateGet(this, _verificationFlowService).verifyExternalWallet(params);
294
+ });
295
+ this.retryVerifyExternalWallet = () => __async(this, null, function* () {
296
+ return yield __privateGet(this, _verificationFlowService).retryVerifyExternalWallet();
297
+ });
298
+ this.performLoginExternalWallet = (params) => __async(this, null, function* () {
299
+ const _a = params, { externalWallet, chainId, uri } = _a, urlOptions = __objRest(_a, ["externalWallet", "chainId", "uri"]);
300
+ const externalWallets = Array.isArray(params.externalWallet) ? params.externalWallet : [params.externalWallet];
301
+ try {
302
+ yield __privateGet(this, _paraCoreInterface).ctx.client.trackExternalWalletConnections({
303
+ wallets: externalWallets.map((wallet) => ({
304
+ address: wallet.address,
305
+ type: wallet.type,
306
+ provider: wallet.provider
307
+ }))
308
+ });
309
+ } catch (err) {
310
+ console.error("Error tracking external wallet connections:", err);
311
+ }
312
+ if (__privateGet(this, _paraCoreInterface).externalWalletConnectionOnly || externalWallets.every((wallet) => wallet.isConnectionOnly)) {
313
+ yield __privateGet(this, _externalWalletService).addExternalWallets({
314
+ externalWallets: externalWallets.map((wallet) => __spreadProps(__spreadValues({}, wallet), {
315
+ withFullParaAuth: false
316
+ }))
317
+ });
318
+ const connectionOnlyWallet = __spreadProps(__spreadValues({}, externalWallets[0]), { withFullParaAuth: false, isConnectionOnly: true });
319
+ return Promise.resolve({
320
+ authState: {
321
+ stage: "done",
322
+ userId: constants.EXTERNAL_WALLET_CONNECTION_ONLY_USER_ID,
323
+ externalWallet: connectionOnlyWallet,
324
+ auth: {
325
+ externalWalletAddress: externalWallets[0].address
326
+ },
327
+ authMethods: [],
328
+ // Returning true as a placeholder, since we don't process this through Para we can't determine this here
329
+ isNewUser: true
330
+ },
331
+ opts: urlOptions
332
+ });
333
+ }
334
+ if (Array.isArray(externalWallet)) {
335
+ throw new Error(
336
+ "Cannot authenticate multiple external wallets at once. To connect multiple wallets at once, use CONNECTION_ONLY mode."
337
+ );
338
+ }
339
+ __privateGet(this, _paraCoreInterface).requireApiKey();
340
+ const serverAuthState = yield __privateGet(this, _paraCoreInterface).ctx.client.loginExternalWallet({ externalWallet, chainId, uri });
341
+ if (!externalWallet.withFullParaAuth && externalWallet.withVerification) {
342
+ yield __privateGet(this, _sessionManagementService).touchSession(true);
343
+ }
344
+ if (externalWallet.withFullParaAuth) {
345
+ yield __privateGet(this, _paraCoreInterface).ctx.client.sessionAddPortalVerification();
346
+ }
347
+ return { authState: serverAuthState, opts: urlOptions };
348
+ });
349
+ this.loginExternalWallet = (params) => __async(this, null, function* () {
350
+ __privateGet(this, _stateManager).send({ type: "AUTHENTICATE_EXTERNAL_WALLET", data: params });
351
+ return yield waitForAuthStateChange({
352
+ stateManager: __privateGet(this, _stateManager),
353
+ resolvePhases: [
354
+ { phase: "awaiting_session_start", onPhase: (state) => state.authStateResult },
355
+ {
356
+ phase: "awaiting_wallet_signature",
357
+ onPhase: (state) => state.authStateResult
358
+ },
359
+ {
360
+ phase: "awaiting_account_verification",
361
+ onPhase: (state) => state.authStateResult
362
+ },
363
+ {
364
+ phase: "awaiting_wallet_verification",
365
+ onPhase: (state) => state.authStateResult
366
+ },
367
+ {
368
+ phase: "authenticated",
369
+ onPhase: (state) => state.authStateResult
370
+ }
371
+ ]
372
+ });
373
+ });
374
+ this.connectExternalWallet = (params) => __async(this, null, function* () {
375
+ __privateGet(this, _stateManager).send({ type: "CONNECT_EXTERNAL_WALLET", data: params });
376
+ return yield waitForAuthStateChange({
377
+ stateManager: __privateGet(this, _stateManager),
378
+ resolvePhases: [
379
+ { phase: "awaiting_session_start", onPhase: (state) => state.authStateResult },
380
+ {
381
+ phase: "awaiting_wallet_signature",
382
+ onPhase: (state) => state.authStateResult
383
+ },
384
+ { phase: "authenticated", onPhase: (state) => state.authStateResult }
385
+ ]
386
+ });
387
+ });
388
+ this.signExternalWalletVerification = (params) => __async(this, null, function* () {
389
+ __privateGet(this, _stateManager).send({ type: "SIGN_EXTERNAL_WALLET_VERIFICATION", data: params });
390
+ return yield waitForAuthStateChange({
391
+ stateManager: __privateGet(this, _stateManager),
392
+ resolvePhases: [
393
+ {
394
+ phase: "awaiting_wallet_verification",
395
+ onPhase: () => __privateGet(this, _stateManager).getSnapshot().externalWalletSignVerification
396
+ }
397
+ ]
398
+ });
399
+ });
400
+ this.verifyOAuthProcess = (params) => __async(this, null, function* () {
401
+ __privateGet(this, _stateManager).send({
402
+ type: "AUTHENTICATE_OAUTH",
403
+ data: __spreadProps(__spreadValues({}, params), {
404
+ onCancel: params.onCancel,
405
+ onPoll: params.onPoll,
406
+ isCanceled: params.isCanceled,
407
+ isLegacy: true
408
+ })
409
+ });
410
+ return yield waitForAuthStateChange({
411
+ stateManager: __privateGet(this, _stateManager),
412
+ resolvePhases: [
413
+ { phase: "awaiting_session_start", onPhase: (state) => state.authStateResult }
414
+ ]
415
+ });
416
+ });
417
+ this.authenticateWithOAuth = (params) => __async(this, null, function* () {
418
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;
419
+ switch (params.method) {
420
+ case "TELEGRAM": {
421
+ __privateGet(this, _stateManager).send({
422
+ type: "AUTHENTICATE_TELEGRAM",
423
+ data: __spreadProps(__spreadValues({}, params), {
424
+ method: params.method,
425
+ isCanceled: (_a = params.oAuthPollingCallbacks) == null ? void 0 : _a.isCanceled,
426
+ onOAuthPopup: (_b = params.redirectCallbacks) == null ? void 0 : _b.onOAuthPopup,
427
+ onOAuthUrl: (_c = params.redirectCallbacks) == null ? void 0 : _c.onOAuthUrl
428
+ })
429
+ });
430
+ break;
431
+ }
432
+ case "FARCASTER": {
433
+ __privateGet(this, _stateManager).send({
434
+ type: "AUTHENTICATE_FARCASTER",
435
+ data: __spreadProps(__spreadValues({}, params), {
436
+ method: params.method,
437
+ isCanceled: (_d = params.oAuthPollingCallbacks) == null ? void 0 : _d.isCanceled,
438
+ onOAuthPopup: (_e = params.redirectCallbacks) == null ? void 0 : _e.onOAuthPopup,
439
+ onOAuthUrl: (_f = params.redirectCallbacks) == null ? void 0 : _f.onOAuthUrl
440
+ })
441
+ });
442
+ break;
443
+ }
444
+ default: {
445
+ __privateGet(this, _stateManager).send({
446
+ type: "AUTHENTICATE_OAUTH",
447
+ data: __spreadProps(__spreadValues({}, params), {
448
+ method: params.method,
449
+ onCancel: (_g = params.oAuthPollingCallbacks) == null ? void 0 : _g.onCancel,
450
+ onPoll: (_h = params.oAuthPollingCallbacks) == null ? void 0 : _h.onPoll,
451
+ isCanceled: (_i = params.oAuthPollingCallbacks) == null ? void 0 : _i.isCanceled,
452
+ isLegacy: false,
453
+ onOAuthPopup: (_j = params.redirectCallbacks) == null ? void 0 : _j.onOAuthPopup,
454
+ onOAuthUrl: (_k = params.redirectCallbacks) == null ? void 0 : _k.onOAuthUrl
455
+ })
456
+ });
457
+ break;
458
+ }
459
+ }
460
+ yield waitForAuthStateChange({
461
+ stateManager: __privateGet(this, _stateManager),
462
+ resolvePhases: [
463
+ // awaiting_session_start will be hit for non-SLO logins & all SLO logins/sign ups
464
+ { phase: "awaiting_session_start", onPhase: () => void 0 }
465
+ ],
466
+ rejectPhases: [
467
+ {
468
+ phase: "unauthenticated",
469
+ onPhase: () => new Error("OAuth canceled")
470
+ }
471
+ ]
472
+ });
473
+ __privateGet(this, _stateManager).send({
474
+ type: "WAIT_FOR_SESSION",
475
+ data: __spreadProps(__spreadValues({}, params.sessionPollingCallbacks), { autoCreateWallets: true })
476
+ });
477
+ const resp = yield waitForAuthStateChange({
478
+ stateManager: __privateGet(this, _stateManager),
479
+ resolvePhases: [
480
+ {
481
+ phase: "authenticated",
482
+ onPhase: (state) => {
483
+ const createdWallets = state.newWalletsResult;
484
+ if (createdWallets) {
485
+ return {
486
+ hasCreatedWallets: true,
487
+ recoverySecret: state.newWalletsResult.recoverySecret
488
+ };
489
+ }
490
+ return {
491
+ hasCreatedWallets: false,
492
+ recoverySecret: void 0
493
+ };
494
+ }
495
+ }
496
+ ],
497
+ rejectPhases: [
498
+ {
499
+ phase: "unauthenticated",
500
+ onPhase: () => new Error("Session waiting canceled")
501
+ }
502
+ ],
503
+ waitForCoreAuthenticated: true
504
+ });
505
+ return __spreadValues({ authInfo: this.authInfo }, resp);
506
+ });
507
+ this.performVerifyTelegram = (params) => __async(this, null, function* () {
508
+ return yield __privateGet(this, _verificationFlowService).performVerifyTelegram(params);
509
+ });
510
+ this.verifyTelegram = (params) => __async(this, null, function* () {
511
+ return yield __privateGet(this, _verificationFlowService).verifyTelegram(params);
512
+ });
513
+ this.performVerifyFarcaster = (params) => __async(this, null, function* () {
514
+ return yield __privateGet(this, _verificationFlowService).performVerifyFarcaster(params);
515
+ });
516
+ this.verifyFarcaster = (params) => __async(this, null, function* () {
517
+ return yield __privateGet(this, _verificationFlowService).verifyFarcaster(params);
518
+ });
519
+ this.supportedUserAuthMethods = () => __async(this, null, function* () {
520
+ this.assertIsAuthSet();
521
+ const { supportedAuthMethods, hasPasswordWithoutPIN } = yield __privateGet(this, _paraCoreInterface).ctx.client.getSupportedAuthMethodsV2(this.authInfo.auth);
522
+ const authMethods = /* @__PURE__ */ new Set();
523
+ for (const type of supportedAuthMethods) {
524
+ switch (type) {
525
+ case "PASSWORD":
526
+ if (hasPasswordWithoutPIN) {
527
+ authMethods.add(AuthMethod.PASSWORD);
528
+ }
529
+ break;
530
+ case "PASSKEY":
531
+ authMethods.add(AuthMethod.PASSKEY);
532
+ break;
533
+ case "PIN":
534
+ authMethods.add(AuthMethod.PIN);
535
+ break;
536
+ case "BASIC_LOGIN":
537
+ authMethods.add(AuthMethod.BASIC_LOGIN);
538
+ break;
539
+ }
540
+ }
541
+ return authMethods;
542
+ });
543
+ this.getNewCredentialAndUrl = (..._0) => __async(this, [..._0], function* ({
544
+ authMethod: optsAuthMethod,
545
+ isForNewDevice = false,
546
+ portalTheme,
547
+ shorten = false
548
+ } = {}) {
549
+ const userAuthMethods = yield this.supportedUserAuthMethods();
550
+ const isEnclaveUser = userAuthMethods.has(AuthMethod.BASIC_LOGIN);
551
+ const isAddingBasicLogin = optsAuthMethod === "BASIC_LOGIN";
552
+ if (isEnclaveUser && isAddingBasicLogin) {
553
+ throw new Error("That user is already using basic login");
554
+ }
555
+ if (isEnclaveUser || isAddingBasicLogin) {
556
+ isForNewDevice = true;
557
+ }
558
+ const authMethods = optsAuthMethod ? [optsAuthMethod] : isForNewDevice ? ["PASSKEY", "PIN", "PASSWORD"] : ["PASSKEY"];
559
+ this.assertIsAuthSet();
560
+ let passkeyId, passwordId, urlType, credentialId;
561
+ if (!isAddingBasicLogin) {
562
+ const canAddPasswordOrPIN = !userAuthMethods.has(AuthMethod.PASSWORD) && !userAuthMethods.has(AuthMethod.PIN);
563
+ if (authMethods.includes("PASSKEY") && (yield __privateGet(this, _paraCoreInterface).isPasskeySupported())) {
564
+ ({
565
+ data: { id: passkeyId }
566
+ } = yield __privateGet(this, _paraCoreInterface).ctx.client.addSessionPublicKey(this.userId, {
567
+ status: AuthMethodStatus.PENDING,
568
+ type: PublicKeyType.WEB
569
+ }));
570
+ urlType = "createAuth";
571
+ }
572
+ if (authMethods.includes("PASSWORD")) {
573
+ if (!canAddPasswordOrPIN) {
574
+ if (optsAuthMethod === "PASSWORD") throw new Error("A user cannot have more than one password or PIN.");
575
+ } else {
576
+ ({
577
+ data: { id: passwordId }
578
+ } = yield __privateGet(this, _paraCoreInterface).ctx.client.addSessionPasswordPublicKey(this.userId, {
579
+ status: AuthMethodStatus.PENDING
580
+ }));
581
+ urlType = "createPassword";
582
+ }
583
+ }
584
+ if (authMethods.includes("PIN")) {
585
+ if (!canAddPasswordOrPIN) {
586
+ if (optsAuthMethod === "PIN") throw new Error("A user cannot have more than one password or PIN.");
587
+ } else {
588
+ ({
589
+ data: { id: passwordId }
590
+ } = yield __privateGet(this, _paraCoreInterface).ctx.client.addSessionPasswordPublicKey(this.userId, {
591
+ status: AuthMethodStatus.PENDING
592
+ }));
593
+ urlType = "createPIN";
594
+ }
595
+ }
596
+ credentialId = passkeyId != null ? passkeyId : passwordId;
597
+ if (__privateGet(this, _paraCoreInterface).isNativePasskey && authMethods.includes("PASSKEY")) {
598
+ return { credentialId };
599
+ }
600
+ }
601
+ const { sessionId } = yield __privateGet(this, _sessionManagementService).touchSession();
602
+ const url = (isForNewDevice || urlType) && (yield __privateGet(this, _portalUrlService).constructPortalUrl(isForNewDevice ? "addNewCredential" : urlType, {
603
+ isForNewDevice,
604
+ pathId: credentialId,
605
+ portalTheme,
606
+ shorten,
607
+ sessionId: isForNewDevice ? sessionId : void 0,
608
+ addNewCredentialType: optsAuthMethod,
609
+ addNewCredentialPasskeyId: passkeyId,
610
+ addNewCredentialPasswordId: passwordId
611
+ }));
612
+ return __spreadValues({ credentialId }, url ? { url } : {});
613
+ });
614
+ this.addCredential = (_0) => __async(this, [_0], function* ({ authMethod }) {
615
+ if (authMethod === "PASSKEY" && !(yield __privateGet(this, _paraCoreInterface).isPasskeySupported())) {
616
+ throw new Error("Passkeys are not supported.");
617
+ }
618
+ const { url } = yield this.getNewCredentialAndUrl({ isForNewDevice: true, authMethod });
619
+ return url;
620
+ });
621
+ this.resendVerificationCode = (_0) => __async(this, [_0], function* ({ type: reason = "SIGNUP" }) {
622
+ let type, linkedAccountId;
623
+ switch (reason) {
624
+ case "SIGNUP":
625
+ case "LOGIN":
626
+ {
627
+ const authInfo = this.assertIsAuthSet(["email", "phone"]);
628
+ type = authInfo.authType.toUpperCase();
629
+ }
630
+ break;
631
+ case "LINK_ACCOUNT":
632
+ {
633
+ const accountLinkInProgress = __privateGet(this, _paraCoreInterface).assertIsLinkingAccount(["EMAIL", "PHONE"]);
634
+ linkedAccountId = accountLinkInProgress.id;
635
+ type = accountLinkInProgress.type;
636
+ }
637
+ break;
638
+ }
639
+ const userId = this.assertUserId({ allowGuestMode: true });
640
+ if (type !== "EMAIL" && type !== "PHONE") {
641
+ throw new Error("invalid auth type for verification code");
642
+ }
643
+ yield __privateGet(this, _paraCoreInterface).ctx.client.resendVerificationCode(__spreadValues({
644
+ userId,
645
+ type,
646
+ linkedAccountId
647
+ }, __privateGet(this, _paraCoreInterface).getVerificationEmailProps()));
648
+ });
649
+ __privateSet(this, _paraCoreInterface, paraCore.getAuthServiceInterface());
650
+ }
651
+ get isEnclaveUser() {
652
+ return __privateGet(this, _isEnclaveUser);
653
+ }
654
+ set isEnclaveUser(value) {
655
+ __privateSet(this, _isEnclaveUser, value);
656
+ }
657
+ get email() {
658
+ var _a;
659
+ return isEmail((_a = this.authInfo) == null ? void 0 : _a.auth) ? this.authInfo.auth.email : void 0;
660
+ }
661
+ get phone() {
662
+ var _a;
663
+ return isPhone((_a = this.authInfo) == null ? void 0 : _a.auth) ? this.authInfo.auth.phone : void 0;
664
+ }
665
+ get farcasterUsername() {
666
+ var _a;
667
+ return isFarcaster((_a = this.authInfo) == null ? void 0 : _a.auth) ? this.authInfo.auth.farcasterUsername : void 0;
668
+ }
669
+ get telegramUserId() {
670
+ var _a;
671
+ return isTelegram((_a = this.authInfo) == null ? void 0 : _a.auth) ? this.authInfo.auth.telegramUserId : void 0;
672
+ }
673
+ get isEmail() {
674
+ var _a;
675
+ return isEmail((_a = this.authInfo) == null ? void 0 : _a.auth);
676
+ }
677
+ get isPhone() {
678
+ var _a;
679
+ return isPhone((_a = this.authInfo) == null ? void 0 : _a.auth);
680
+ }
681
+ get isFarcaster() {
682
+ var _a;
683
+ return isFarcaster((_a = this.authInfo) == null ? void 0 : _a.auth);
684
+ }
685
+ get isTelegram() {
686
+ var _a;
687
+ return isTelegram((_a = this.authInfo) == null ? void 0 : _a.auth);
688
+ }
689
+ get isExternalWalletAuth() {
690
+ var _a, _b, _c;
691
+ return isExternalWallet((_a = this.authInfo) == null ? void 0 : _a.auth) && !!((_c = (_b = this.authInfo) == null ? void 0 : _b.externalWallet) == null ? void 0 : _c.withFullParaAuth);
692
+ }
693
+ get isExternalWalletWithVerification() {
694
+ var _a, _b, _c;
695
+ return isExternalWallet((_a = this.authInfo) == null ? void 0 : _a.auth) && !!((_c = (_b = this.authInfo) == null ? void 0 : _b.externalWallet) == null ? void 0 : _c.withVerification);
696
+ }
697
+ get authInfo() {
698
+ return __privateGet(this, _authInfo);
699
+ }
700
+ set authInfo(authInfo) {
701
+ __privateSet(this, _authInfo, authInfo);
702
+ }
703
+ }
704
+ _stateManager = new WeakMap();
705
+ _loginFlowService = new WeakMap();
706
+ _signupFlowService = new WeakMap();
707
+ _verificationFlowService = new WeakMap();
708
+ _externalWalletService = new WeakMap();
709
+ _pregenWalletService = new WeakMap();
710
+ _sessionManagementService = new WeakMap();
711
+ _portalUrlService = new WeakMap();
712
+ _paraCoreInterface = new WeakMap();
713
+ _authInfo = new WeakMap();
714
+ _isEnclaveUser = new WeakMap();
715
+ export {
716
+ AuthService
717
+ };