@djangocfg/api 2.1.583 → 2.1.585
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/OAuthTokenResponse-WEDM6IP5.mjs +19 -0
- package/dist/OAuthTokenResponse-WEDM6IP5.mjs.map +1 -0
- package/dist/OTPVerifyResponse-P5LDNM7H.mjs +20 -0
- package/dist/OTPVerifyResponse-P5LDNM7H.mjs.map +1 -0
- package/dist/PasswordLoginResponse-33B576NG.mjs +20 -0
- package/dist/PasswordLoginResponse-33B576NG.mjs.map +1 -0
- package/dist/auth.cjs +12 -28
- package/dist/auth.cjs.map +1 -1
- package/dist/auth.d.cts +14 -41
- package/dist/auth.d.ts +14 -41
- package/dist/auth.mjs +12 -26
- package/dist/auth.mjs.map +1 -1
- package/dist/clients.cjs +0 -1
- package/dist/clients.cjs.map +1 -1
- package/dist/clients.d.cts +13 -41
- package/dist/clients.d.ts +13 -41
- package/dist/clients.mjs +0 -1
- package/dist/clients.mjs.map +1 -1
- package/dist/hooks.cjs +0 -1
- package/dist/hooks.cjs.map +1 -1
- package/dist/hooks.mjs +0 -1
- package/dist/hooks.mjs.map +1 -1
- package/dist/index.cjs +0 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +7 -64
- package/dist/index.d.ts +7 -64
- package/dist/index.mjs +0 -1
- package/dist/index.mjs.map +1 -1
- package/dist/storage.cjs +0 -1
- package/dist/storage.cjs.map +1 -1
- package/dist/storage.d.cts +0 -1
- package/dist/storage.d.ts +0 -1
- package/dist/storage.mjs +0 -1
- package/dist/storage.mjs.map +1 -1
- package/package.json +2 -2
- package/src/_api/generated/_cfg_accounts/openapi.json +1 -28
- package/src/_api/generated/_cfg_accounts/schemas/OAuthCallbackRequestRequest.ts +0 -1
- package/src/_api/generated/_cfg_accounts/schemas/OAuthTokenResponse.ts +0 -1
- package/src/_api/generated/_cfg_accounts/schemas/OTPVerifyRequest.ts +0 -1
- package/src/_api/generated/_cfg_accounts/schemas/OTPVerifyResponse.ts +0 -1
- package/src/_api/generated/_cfg_accounts/schemas/PasswordLoginRequest.ts +0 -1
- package/src/_api/generated/_cfg_accounts/schemas/PasswordLoginResponse.ts +0 -1
- package/src/_api/generated/_cfg_totp/openapi.json +0 -5
- package/src/_api/generated/_cfg_totp/schemas/VerifyResponse.ts +0 -1
- package/src/_api/generated/helpers/auth.ts +1 -1
- package/src/_api/generated/helpers/keys.ts +0 -1
- package/src/_api/generated/openapi.json +1 -33
- package/src/_api/generated/types.gen.ts +4 -59
- package/src/auth/__tests__/passwordLogin.test.tsx +1 -3
- package/src/auth/context/AccountsContext.tsx +6 -8
- package/src/auth/context/AuthContext.tsx +1 -4
- package/src/auth/context/types.ts +1 -1
- package/src/auth/hooks/useAuthForm.ts +3 -5
- package/src/auth/hooks/useAuthFormState.ts +0 -4
- package/src/auth/hooks/useGithubAuth.ts +5 -12
- package/src/auth/hooks/useTwoFactorVerify.ts +2 -2
- package/src/auth/types/form.ts +0 -5
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import "./chunk-53YKWR6F.mjs";
|
|
3
|
+
|
|
4
|
+
// src/_api/generated/_cfg_accounts/schemas/OAuthTokenResponse.ts
|
|
5
|
+
import { z } from "zod";
|
|
6
|
+
var OAuthTokenResponseSchema = z.object({
|
|
7
|
+
requires_2fa: z.boolean().default(false).optional(),
|
|
8
|
+
session_id: z.string().regex(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i).nullable().optional(),
|
|
9
|
+
access: z.string().nullable().optional(),
|
|
10
|
+
refresh: z.string().nullable().optional(),
|
|
11
|
+
user: z.object({}).passthrough().nullable().optional(),
|
|
12
|
+
is_new_user: z.boolean().default(false).optional(),
|
|
13
|
+
is_new_connection: z.boolean().default(false).optional(),
|
|
14
|
+
should_prompt_2fa: z.boolean().optional()
|
|
15
|
+
});
|
|
16
|
+
export {
|
|
17
|
+
OAuthTokenResponseSchema
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=OAuthTokenResponse-WEDM6IP5.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/_api/generated/_cfg_accounts/schemas/OAuthTokenResponse.ts"],"sourcesContent":["// AUTO-GENERATED by cmdop_server / devtools.generator.ts_extras\n// Source: OpenAPI 3.1 components.schemas\n// DO NOT EDIT — re-run `make gen-clients`.\n\nimport { z } from \"zod\";\n\nexport const OAuthTokenResponseSchema = z.object({\n requires_2fa: z.boolean().default(false).optional(),\n session_id: z.string().regex(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i).nullable().optional(),\n access: z.string().nullable().optional(),\n refresh: z.string().nullable().optional(),\n user: z.object({}).passthrough().nullable().optional(),\n is_new_user: z.boolean().default(false).optional(),\n is_new_connection: z.boolean().default(false).optional(),\n should_prompt_2fa: z.boolean().optional(),\n});\n\nexport type OAuthTokenResponse = z.infer<typeof OAuthTokenResponseSchema>;\n"],"mappings":";;;;AAIA,SAAS,SAAS;AAEX,IAAM,2BAA2B,EAAE,OAAO;AAAA,EAC/C,cAAc,EAAE,QAAQ,EAAE,QAAQ,KAAK,EAAE,SAAS;AAAA,EAClD,YAAY,EAAE,OAAO,EAAE,MAAM,iEAAiE,EAAE,SAAS,EAAE,SAAS;AAAA,EACpH,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS;AAAA,EACvC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS;AAAA,EACxC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS;AAAA,EACrD,aAAa,EAAE,QAAQ,EAAE,QAAQ,KAAK,EAAE,SAAS;AAAA,EACjD,mBAAmB,EAAE,QAAQ,EAAE,QAAQ,KAAK,EAAE,SAAS;AAAA,EACvD,mBAAmB,EAAE,QAAQ,EAAE,SAAS;AAC1C,CAAC;","names":[]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
UserSchema
|
|
4
|
+
} from "./chunk-B22YGMM3.mjs";
|
|
5
|
+
import "./chunk-53YKWR6F.mjs";
|
|
6
|
+
|
|
7
|
+
// src/_api/generated/_cfg_accounts/schemas/OTPVerifyResponse.ts
|
|
8
|
+
import { z } from "zod";
|
|
9
|
+
var OTPVerifyResponseSchema = z.object({
|
|
10
|
+
requires_2fa: z.boolean().default(false).optional(),
|
|
11
|
+
session_id: z.string().regex(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i).nullable().optional(),
|
|
12
|
+
refresh: z.string().nullable().optional(),
|
|
13
|
+
access: z.string().nullable().optional(),
|
|
14
|
+
user: UserSchema.nullable().optional(),
|
|
15
|
+
should_prompt_2fa: z.boolean().optional()
|
|
16
|
+
});
|
|
17
|
+
export {
|
|
18
|
+
OTPVerifyResponseSchema
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=OTPVerifyResponse-P5LDNM7H.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/_api/generated/_cfg_accounts/schemas/OTPVerifyResponse.ts"],"sourcesContent":["// AUTO-GENERATED by cmdop_server / devtools.generator.ts_extras\n// Source: OpenAPI 3.1 components.schemas\n// DO NOT EDIT — re-run `make gen-clients`.\n\nimport { z } from \"zod\";\nimport { UserSchema } from \"./User\";\n\nexport const OTPVerifyResponseSchema = z.object({\n requires_2fa: z.boolean().default(false).optional(),\n session_id: z.string().regex(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i).nullable().optional(),\n refresh: z.string().nullable().optional(),\n access: z.string().nullable().optional(),\n user: UserSchema.nullable().optional(),\n should_prompt_2fa: z.boolean().optional(),\n});\n\nexport type OTPVerifyResponse = z.infer<typeof OTPVerifyResponseSchema>;\n"],"mappings":";;;;;;;AAIA,SAAS,SAAS;AAGX,IAAM,0BAA0B,EAAE,OAAO;AAAA,EAC9C,cAAc,EAAE,QAAQ,EAAE,QAAQ,KAAK,EAAE,SAAS;AAAA,EAClD,YAAY,EAAE,OAAO,EAAE,MAAM,iEAAiE,EAAE,SAAS,EAAE,SAAS;AAAA,EACpH,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS;AAAA,EACxC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS;AAAA,EACvC,MAAM,WAAW,SAAS,EAAE,SAAS;AAAA,EACrC,mBAAmB,EAAE,QAAQ,EAAE,SAAS;AAC1C,CAAC;","names":[]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
UserSchema
|
|
4
|
+
} from "./chunk-B22YGMM3.mjs";
|
|
5
|
+
import "./chunk-53YKWR6F.mjs";
|
|
6
|
+
|
|
7
|
+
// src/_api/generated/_cfg_accounts/schemas/PasswordLoginResponse.ts
|
|
8
|
+
import { z } from "zod";
|
|
9
|
+
var PasswordLoginResponseSchema = z.object({
|
|
10
|
+
requires_2fa: z.boolean().default(false).optional(),
|
|
11
|
+
session_id: z.string().regex(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i).nullable().optional(),
|
|
12
|
+
refresh: z.string().nullable().optional(),
|
|
13
|
+
access: z.string().nullable().optional(),
|
|
14
|
+
user: UserSchema.nullable().optional(),
|
|
15
|
+
should_prompt_2fa: z.boolean().optional()
|
|
16
|
+
});
|
|
17
|
+
export {
|
|
18
|
+
PasswordLoginResponseSchema
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=PasswordLoginResponse-33B576NG.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/_api/generated/_cfg_accounts/schemas/PasswordLoginResponse.ts"],"sourcesContent":["// AUTO-GENERATED by cmdop_server / devtools.generator.ts_extras\n// Source: OpenAPI 3.1 components.schemas\n// DO NOT EDIT — re-run `make gen-clients`.\n\nimport { z } from \"zod\";\nimport { UserSchema } from \"./User\";\n\nexport const PasswordLoginResponseSchema = z.object({\n requires_2fa: z.boolean().default(false).optional(),\n session_id: z.string().regex(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i).nullable().optional(),\n refresh: z.string().nullable().optional(),\n access: z.string().nullable().optional(),\n user: UserSchema.nullable().optional(),\n should_prompt_2fa: z.boolean().optional(),\n});\n\nexport type PasswordLoginResponse = z.infer<typeof PasswordLoginResponseSchema>;\n"],"mappings":";;;;;;;AAIA,SAAS,SAAS;AAGX,IAAM,8BAA8B,EAAE,OAAO;AAAA,EAClD,cAAc,EAAE,QAAQ,EAAE,QAAQ,KAAK,EAAE,SAAS;AAAA,EAClD,YAAY,EAAE,OAAO,EAAE,MAAM,iEAAiE,EAAE,SAAS,EAAE,SAAS;AAAA,EACpH,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS;AAAA,EACxC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS;AAAA,EACvC,MAAM,WAAW,SAAS,EAAE,SAAS;AAAA,EACrC,mBAAmB,EAAE,QAAQ,EAAE,SAAS;AAC1C,CAAC;","names":[]}
|
package/dist/auth.cjs
CHANGED
|
@@ -129,8 +129,7 @@ var init_OTPVerifyResponse = __esm({
|
|
|
129
129
|
refresh: import_zod5.z.string().nullable().optional(),
|
|
130
130
|
access: import_zod5.z.string().nullable().optional(),
|
|
131
131
|
user: UserSchema.nullable().optional(),
|
|
132
|
-
should_prompt_2fa: import_zod5.z.boolean().optional()
|
|
133
|
-
persistent_session: import_zod5.z.boolean().optional()
|
|
132
|
+
should_prompt_2fa: import_zod5.z.boolean().optional()
|
|
134
133
|
});
|
|
135
134
|
}
|
|
136
135
|
});
|
|
@@ -152,8 +151,7 @@ var init_PasswordLoginResponse = __esm({
|
|
|
152
151
|
refresh: import_zod6.z.string().nullable().optional(),
|
|
153
152
|
access: import_zod6.z.string().nullable().optional(),
|
|
154
153
|
user: UserSchema.nullable().optional(),
|
|
155
|
-
should_prompt_2fa: import_zod6.z.boolean().optional()
|
|
156
|
-
persistent_session: import_zod6.z.boolean().optional()
|
|
154
|
+
should_prompt_2fa: import_zod6.z.boolean().optional()
|
|
157
155
|
});
|
|
158
156
|
}
|
|
159
157
|
});
|
|
@@ -310,7 +308,6 @@ var CFG_KEYS = {
|
|
|
310
308
|
redirectUrlTs: k("cfg.auth.redirect_url_ts", "session", true),
|
|
311
309
|
oauthState: k("cfg.auth.oauth_state", "session", true),
|
|
312
310
|
oauthProvider: k("cfg.auth.oauth_provider", "session", true),
|
|
313
|
-
oauthRememberMe: k("cfg.auth.oauth_remember_me", "session", true),
|
|
314
311
|
profileCache: k("cfg.profile.cache", "local", true),
|
|
315
312
|
monitorSessionId: k("cfg.monitor.session_id", "local", false),
|
|
316
313
|
monitorSessionCookie: k("cfg.monitor.session_id", "cookie", false),
|
|
@@ -1403,7 +1400,6 @@ var useAuthFormState = /* @__PURE__ */ __name((initialIdentifier = "") => {
|
|
|
1403
1400
|
const [isLoading, setIsLoading] = (0, import_react4.useState)(false);
|
|
1404
1401
|
const [acceptedTerms, setAcceptedTerms] = (0, import_react4.useState)(true);
|
|
1405
1402
|
const [marketingConsent, setMarketingConsent] = (0, import_react4.useState)(null);
|
|
1406
|
-
const [rememberMe, setRememberMe] = (0, import_react4.useState)(true);
|
|
1407
1403
|
const [step, setStep] = (0, import_react4.useState)("identifier");
|
|
1408
1404
|
const [error, setError] = (0, import_react4.useState)("");
|
|
1409
1405
|
const [webmail, setWebmail] = (0, import_react4.useState)(null);
|
|
@@ -1418,7 +1414,6 @@ var useAuthFormState = /* @__PURE__ */ __name((initialIdentifier = "") => {
|
|
|
1418
1414
|
isLoading,
|
|
1419
1415
|
acceptedTerms,
|
|
1420
1416
|
marketingConsent,
|
|
1421
|
-
rememberMe,
|
|
1422
1417
|
step,
|
|
1423
1418
|
error,
|
|
1424
1419
|
rateLimitSeconds: rateLimit.seconds,
|
|
@@ -1433,7 +1428,6 @@ var useAuthFormState = /* @__PURE__ */ __name((initialIdentifier = "") => {
|
|
|
1433
1428
|
setPassword,
|
|
1434
1429
|
setAcceptedTerms,
|
|
1435
1430
|
setMarketingConsent,
|
|
1436
|
-
setRememberMe,
|
|
1437
1431
|
setError,
|
|
1438
1432
|
clearError,
|
|
1439
1433
|
setStep,
|
|
@@ -1568,7 +1562,6 @@ var useAuthForm = /* @__PURE__ */ __name((options) => {
|
|
|
1568
1562
|
password,
|
|
1569
1563
|
acceptedTerms,
|
|
1570
1564
|
marketingConsent,
|
|
1571
|
-
rememberMe,
|
|
1572
1565
|
setIdentifier,
|
|
1573
1566
|
setOtp,
|
|
1574
1567
|
setStep,
|
|
@@ -1665,7 +1658,7 @@ var useAuthForm = /* @__PURE__ */ __name((options) => {
|
|
|
1665
1658
|
setIsLoading(true);
|
|
1666
1659
|
clearError();
|
|
1667
1660
|
try {
|
|
1668
|
-
const result = await verifyOTP(submitIdentifier, submitOtp, sourceUrl, redirectUrl, true
|
|
1661
|
+
const result = await verifyOTP(submitIdentifier, submitOtp, sourceUrl, redirectUrl, true);
|
|
1669
1662
|
if (result.requires_2fa && result.session_id) {
|
|
1670
1663
|
authLogger.info("2FA required after OTP verification");
|
|
1671
1664
|
beginTwoFactorChallenge({ sessionId: result.session_id });
|
|
@@ -1691,7 +1684,7 @@ var useAuthForm = /* @__PURE__ */ __name((options) => {
|
|
|
1691
1684
|
} finally {
|
|
1692
1685
|
setIsLoading(false);
|
|
1693
1686
|
}
|
|
1694
|
-
}, [verifyOTP, saveIdentifierToStorage, setError, setIsLoading, clearError, onOTPSuccess, onError, sourceUrl, redirectUrl,
|
|
1687
|
+
}, [verifyOTP, saveIdentifierToStorage, setError, setIsLoading, clearError, onOTPSuccess, onError, sourceUrl, redirectUrl, setStep]);
|
|
1695
1688
|
const handleOTPSubmit = (0, import_react8.useCallback)(async (e) => {
|
|
1696
1689
|
e.preventDefault();
|
|
1697
1690
|
await submitOTP(identifier, otp);
|
|
@@ -1714,8 +1707,7 @@ var useAuthForm = /* @__PURE__ */ __name((options) => {
|
|
|
1714
1707
|
try {
|
|
1715
1708
|
const result = await login(submitIdentifier, submitPassword_, {
|
|
1716
1709
|
redirectUrl,
|
|
1717
|
-
skipRedirect: true
|
|
1718
|
-
rememberMe
|
|
1710
|
+
skipRedirect: true
|
|
1719
1711
|
});
|
|
1720
1712
|
if (result.requires_2fa && result.session_id) {
|
|
1721
1713
|
authLogger.info("2FA required after password login");
|
|
@@ -1757,7 +1749,6 @@ var useAuthForm = /* @__PURE__ */ __name((options) => {
|
|
|
1757
1749
|
onOTPSuccess,
|
|
1758
1750
|
onError,
|
|
1759
1751
|
redirectUrl,
|
|
1760
|
-
rememberMe,
|
|
1761
1752
|
setStep
|
|
1762
1753
|
]);
|
|
1763
1754
|
const handlePasswordSubmit = (0, import_react8.useCallback)(async (e) => {
|
|
@@ -3277,9 +3268,8 @@ var logAuthFailure = /* @__PURE__ */ __name((log, message, error) => {
|
|
|
3277
3268
|
// src/auth/hooks/useGithubAuth.ts
|
|
3278
3269
|
var OAUTH_STATE_KEY = CFG_KEYS.oauthState.key;
|
|
3279
3270
|
var OAUTH_PROVIDER_KEY = CFG_KEYS.oauthProvider.key;
|
|
3280
|
-
var OAUTH_REMEMBER_KEY = CFG_KEYS.oauthRememberMe.key;
|
|
3281
3271
|
var useGithubAuth = /* @__PURE__ */ __name((options = {}) => {
|
|
3282
|
-
const { sourceUrl,
|
|
3272
|
+
const { sourceUrl, onSuccess, onError, onRequires2FA, redirectUrl, skipRedirect = false } = options;
|
|
3283
3273
|
const router = useCfgRouter();
|
|
3284
3274
|
const [isLoading, setIsLoading] = (0, import_react9.useState)(false);
|
|
3285
3275
|
const [error, setError] = (0, import_react9.useState)(null);
|
|
@@ -3307,7 +3297,6 @@ var useGithubAuth = /* @__PURE__ */ __name((options = {}) => {
|
|
|
3307
3297
|
if (typeof window !== "undefined") {
|
|
3308
3298
|
sessionStorage.setItem(OAUTH_STATE_KEY, response.state);
|
|
3309
3299
|
sessionStorage.setItem(OAUTH_PROVIDER_KEY, "github");
|
|
3310
|
-
sessionStorage.setItem(OAUTH_REMEMBER_KEY, String(rememberMe));
|
|
3311
3300
|
}
|
|
3312
3301
|
window.location.href = response.authorization_url;
|
|
3313
3302
|
} catch (err) {
|
|
@@ -3322,25 +3311,22 @@ var useGithubAuth = /* @__PURE__ */ __name((options = {}) => {
|
|
|
3322
3311
|
} finally {
|
|
3323
3312
|
setIsLoading(false);
|
|
3324
3313
|
}
|
|
3325
|
-
}, [sourceUrl,
|
|
3314
|
+
}, [sourceUrl, onError]);
|
|
3326
3315
|
const handleGithubCallback = (0, import_react9.useCallback)(async (code, state) => {
|
|
3327
3316
|
setIsLoading(true);
|
|
3328
3317
|
setError(null);
|
|
3329
3318
|
try {
|
|
3330
3319
|
authLogger.info("Processing GitHub OAuth callback...");
|
|
3331
|
-
let rememberMeForSession = false;
|
|
3332
3320
|
if (typeof window !== "undefined") {
|
|
3333
3321
|
const storedState = sessionStorage.getItem(OAUTH_STATE_KEY);
|
|
3334
3322
|
if (storedState && storedState !== state) {
|
|
3335
3323
|
throw new Error("Invalid OAuth state - possible CSRF attack");
|
|
3336
3324
|
}
|
|
3337
|
-
rememberMeForSession = sessionStorage.getItem(OAUTH_REMEMBER_KEY) === "true";
|
|
3338
3325
|
sessionStorage.removeItem(OAUTH_STATE_KEY);
|
|
3339
3326
|
sessionStorage.removeItem(OAUTH_PROVIDER_KEY);
|
|
3340
|
-
sessionStorage.removeItem(OAUTH_REMEMBER_KEY);
|
|
3341
3327
|
}
|
|
3342
3328
|
const result = await CfgAccountsOauth.cfgAccountsOauthGithubCallbackCreate({
|
|
3343
|
-
body: { code, state
|
|
3329
|
+
body: { code, state },
|
|
3344
3330
|
throwOnError: true
|
|
3345
3331
|
});
|
|
3346
3332
|
const response = result.data;
|
|
@@ -4936,14 +4922,13 @@ var AuthProviderInternal = /* @__PURE__ */ __name(({ children, config }) => {
|
|
|
4936
4922
|
[]
|
|
4937
4923
|
);
|
|
4938
4924
|
const verifyOTP = (0, import_react17.useCallback)(
|
|
4939
|
-
async (identifier, otpCode, sourceUrl, redirectUrl, skipRedirect
|
|
4925
|
+
async (identifier, otpCode, sourceUrl, redirectUrl, skipRedirect) => {
|
|
4940
4926
|
try {
|
|
4941
4927
|
pendingManualNavRef.current = Boolean(skipRedirect);
|
|
4942
4928
|
const result = await accountsRef.current.verifyOTP({
|
|
4943
4929
|
identifier,
|
|
4944
4930
|
otp: otpCode,
|
|
4945
|
-
source_url: sourceUrl
|
|
4946
|
-
remember_me: rememberMe
|
|
4931
|
+
source_url: sourceUrl
|
|
4947
4932
|
});
|
|
4948
4933
|
if (result.requires_2fa && result.session_id) {
|
|
4949
4934
|
authLogger.info("2FA required, session:", result.session_id);
|
|
@@ -4998,13 +4983,12 @@ var AuthProviderInternal = /* @__PURE__ */ __name(({ children, config }) => {
|
|
|
4998
4983
|
);
|
|
4999
4984
|
const login = (0, import_react17.useCallback)(
|
|
5000
4985
|
async (email, password, options) => {
|
|
5001
|
-
const { redirectUrl, skipRedirect
|
|
4986
|
+
const { redirectUrl, skipRedirect } = options || {};
|
|
5002
4987
|
try {
|
|
5003
4988
|
pendingManualNavRef.current = Boolean(skipRedirect);
|
|
5004
4989
|
const result = await accountsRef.current.loginWithPassword({
|
|
5005
4990
|
email,
|
|
5006
|
-
password
|
|
5007
|
-
remember_me: rememberMe
|
|
4991
|
+
password
|
|
5008
4992
|
});
|
|
5009
4993
|
if (result.requires_2fa && result.session_id) {
|
|
5010
4994
|
authLogger.info("2FA required, session:", result.session_id);
|