@agent-native/core 0.66.1 → 0.66.2
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/cli/skills.d.ts +4 -4
- package/dist/cli/skills.d.ts.map +1 -1
- package/dist/cli/skills.js +46 -13
- package/dist/cli/skills.js.map +1 -1
- package/dist/client/ConnectBuilderCard.js +1 -1
- package/dist/client/ConnectBuilderCard.js.map +1 -1
- package/dist/onboarding/default-steps.d.ts.map +1 -1
- package/dist/onboarding/default-steps.js +2 -1
- package/dist/onboarding/default-steps.js.map +1 -1
- package/dist/org/context.d.ts +3 -6
- package/dist/org/context.d.ts.map +1 -1
- package/dist/org/context.js +15 -12
- package/dist/org/context.js.map +1 -1
- package/dist/server/app-url.d.ts.map +1 -1
- package/dist/server/app-url.js +23 -1
- package/dist/server/app-url.js.map +1 -1
- package/dist/server/auth.d.ts.map +1 -1
- package/dist/server/auth.js +58 -18
- package/dist/server/auth.js.map +1 -1
- package/dist/server/onboarding-html.d.ts.map +1 -1
- package/dist/server/onboarding-html.js +44 -9
- package/dist/server/onboarding-html.js.map +1 -1
- package/dist/templates/workspace-core/.agents/skills/authentication/SKILL.md +14 -3
- package/package.json +1 -1
- package/src/templates/workspace-core/.agents/skills/authentication/SKILL.md +14 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/server/auth.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/server/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/server/auth.js
CHANGED
|
@@ -542,12 +542,36 @@ function authLoginResponse(event, token, email) {
|
|
|
542
542
|
*/
|
|
543
543
|
const EXPECTED_AUTH_FAILURE_PATTERNS = [
|
|
544
544
|
/invalid\s+(email|password|credentials)/i,
|
|
545
|
+
/\[?body\.email\]?\s+invalid input/i,
|
|
545
546
|
/password.*incorrect/i,
|
|
546
547
|
/user\s+(not\s+found|already\s+exists)/i,
|
|
547
548
|
/email\s+already/i,
|
|
548
549
|
/already\s+(exists|registered|in\s+use)/i,
|
|
549
550
|
/not\s+verified/i,
|
|
550
551
|
];
|
|
552
|
+
const VALID_AUTH_EMAIL_MESSAGE = "Enter a valid email address, like you@example.com.";
|
|
553
|
+
const AUTH_EMAIL_PATTERN = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
|
|
554
|
+
function normalizeAuthEmail(value) {
|
|
555
|
+
if (typeof value !== "string")
|
|
556
|
+
return null;
|
|
557
|
+
const email = value.trim().toLowerCase();
|
|
558
|
+
return AUTH_EMAIL_PATTERN.test(email) ? email : null;
|
|
559
|
+
}
|
|
560
|
+
function publicAuthError(error, fallback) {
|
|
561
|
+
const message = error?.message;
|
|
562
|
+
if (typeof message === "string") {
|
|
563
|
+
if (isAuthEmailValidationMessage(message)) {
|
|
564
|
+
return { message: VALID_AUTH_EMAIL_MESSAGE, statusCode: 400 };
|
|
565
|
+
}
|
|
566
|
+
if (message.trim())
|
|
567
|
+
return { message };
|
|
568
|
+
}
|
|
569
|
+
return { message: fallback };
|
|
570
|
+
}
|
|
571
|
+
function isAuthEmailValidationMessage(message) {
|
|
572
|
+
return (/\bemail\b/i.test(message) &&
|
|
573
|
+
/(invalid|input|required|format)/i.test(message));
|
|
574
|
+
}
|
|
551
575
|
export function isExpectedAuthFailure(error) {
|
|
552
576
|
const msg = error?.message;
|
|
553
577
|
if (typeof msg !== "string")
|
|
@@ -2394,12 +2418,17 @@ async function mountBetterAuthRoutes(app, options) {
|
|
|
2394
2418
|
}
|
|
2395
2419
|
const body = await readBody(event);
|
|
2396
2420
|
// Email/password login via Better Auth
|
|
2397
|
-
const
|
|
2421
|
+
const rawEmail = typeof body?.email === "string" ? body.email : "";
|
|
2422
|
+
const email = normalizeAuthEmail(rawEmail);
|
|
2398
2423
|
const password = body?.password;
|
|
2399
|
-
if (!
|
|
2424
|
+
if (!rawEmail.trim() || !password) {
|
|
2400
2425
|
setResponseStatus(event, 400);
|
|
2401
2426
|
return { error: "Email and password are required" };
|
|
2402
2427
|
}
|
|
2428
|
+
if (!email) {
|
|
2429
|
+
setResponseStatus(event, 400);
|
|
2430
|
+
return { error: VALID_AUTH_EMAIL_MESSAGE };
|
|
2431
|
+
}
|
|
2403
2432
|
try {
|
|
2404
2433
|
const result = await auth.api.signInEmail({
|
|
2405
2434
|
body: { email, password },
|
|
@@ -2428,8 +2457,9 @@ async function mountBetterAuthRoutes(app, options) {
|
|
|
2428
2457
|
if (!isExpectedAuthFailure(e)) {
|
|
2429
2458
|
captureAuthError(e, { route: "login", email });
|
|
2430
2459
|
}
|
|
2431
|
-
|
|
2432
|
-
|
|
2460
|
+
const authError = publicAuthError(e, "Invalid email or password");
|
|
2461
|
+
setResponseStatus(event, authError.statusCode ?? 401);
|
|
2462
|
+
return { error: authError.message };
|
|
2433
2463
|
}
|
|
2434
2464
|
}));
|
|
2435
2465
|
// Backward-compat: POST /_agent-native/auth/register
|
|
@@ -2439,14 +2469,15 @@ async function mountBetterAuthRoutes(app, options) {
|
|
|
2439
2469
|
return { error: "Method not allowed" };
|
|
2440
2470
|
}
|
|
2441
2471
|
const body = await readBody(event);
|
|
2442
|
-
const
|
|
2472
|
+
const rawEmail = typeof body?.email === "string" ? body.email : "";
|
|
2473
|
+
const email = normalizeAuthEmail(rawEmail);
|
|
2443
2474
|
const password = body?.password;
|
|
2444
2475
|
const callbackURL = typeof body?.callbackURL === "string"
|
|
2445
2476
|
? safeReturnPath(body.callbackURL)
|
|
2446
2477
|
: "/";
|
|
2447
|
-
if (!email
|
|
2478
|
+
if (!email) {
|
|
2448
2479
|
setResponseStatus(event, 400);
|
|
2449
|
-
return { error:
|
|
2480
|
+
return { error: VALID_AUTH_EMAIL_MESSAGE };
|
|
2450
2481
|
}
|
|
2451
2482
|
if (!password || typeof password !== "string" || password.length < 8) {
|
|
2452
2483
|
setResponseStatus(event, 400);
|
|
@@ -2462,8 +2493,9 @@ async function mountBetterAuthRoutes(app, options) {
|
|
|
2462
2493
|
if (!isExpectedAuthFailure(e)) {
|
|
2463
2494
|
captureAuthError(e, { route: "signup", email });
|
|
2464
2495
|
}
|
|
2465
|
-
|
|
2466
|
-
|
|
2496
|
+
const authError = publicAuthError(e, "Registration failed");
|
|
2497
|
+
setResponseStatus(event, authError.statusCode ?? 409);
|
|
2498
|
+
return { error: authError.message };
|
|
2467
2499
|
}
|
|
2468
2500
|
}));
|
|
2469
2501
|
// Backward-compat: POST /_agent-native/auth/logout
|
|
@@ -2598,12 +2630,17 @@ function mountAuthFallbackRoutes(app) {
|
|
|
2598
2630
|
return { error: "Method not allowed" };
|
|
2599
2631
|
}
|
|
2600
2632
|
const body = await readBody(event);
|
|
2601
|
-
const
|
|
2633
|
+
const rawEmail = typeof body?.email === "string" ? body.email : "";
|
|
2634
|
+
const email = normalizeAuthEmail(rawEmail);
|
|
2602
2635
|
const password = body?.password;
|
|
2603
|
-
if (!
|
|
2636
|
+
if (!rawEmail.trim() || !password) {
|
|
2604
2637
|
setResponseStatus(event, 400);
|
|
2605
2638
|
return { error: "Email and password are required" };
|
|
2606
2639
|
}
|
|
2640
|
+
if (!email) {
|
|
2641
|
+
setResponseStatus(event, 400);
|
|
2642
|
+
return { error: VALID_AUTH_EMAIL_MESSAGE };
|
|
2643
|
+
}
|
|
2607
2644
|
try {
|
|
2608
2645
|
const auth = await getBetterAuth();
|
|
2609
2646
|
const result = await auth.api.signInEmail({
|
|
@@ -2630,8 +2667,9 @@ function mountAuthFallbackRoutes(app) {
|
|
|
2630
2667
|
if (!isExpectedAuthFailure(e)) {
|
|
2631
2668
|
captureAuthError(e, { route: "login", email });
|
|
2632
2669
|
}
|
|
2633
|
-
|
|
2634
|
-
|
|
2670
|
+
const authError = publicAuthError(e, "Invalid email or password");
|
|
2671
|
+
setResponseStatus(event, authError.statusCode ?? 401);
|
|
2672
|
+
return { error: authError.message };
|
|
2635
2673
|
}
|
|
2636
2674
|
}));
|
|
2637
2675
|
app.use("/_agent-native/auth/register", defineEventHandler(async (event) => {
|
|
@@ -2640,11 +2678,12 @@ function mountAuthFallbackRoutes(app) {
|
|
|
2640
2678
|
return { error: "Method not allowed" };
|
|
2641
2679
|
}
|
|
2642
2680
|
const body = await readBody(event);
|
|
2643
|
-
const
|
|
2681
|
+
const rawEmail = typeof body?.email === "string" ? body.email : "";
|
|
2682
|
+
const email = normalizeAuthEmail(rawEmail);
|
|
2644
2683
|
const password = body?.password;
|
|
2645
|
-
if (!email
|
|
2684
|
+
if (!email) {
|
|
2646
2685
|
setResponseStatus(event, 400);
|
|
2647
|
-
return { error:
|
|
2686
|
+
return { error: VALID_AUTH_EMAIL_MESSAGE };
|
|
2648
2687
|
}
|
|
2649
2688
|
if (!password || typeof password !== "string" || password.length < 8) {
|
|
2650
2689
|
setResponseStatus(event, 400);
|
|
@@ -2661,8 +2700,9 @@ function mountAuthFallbackRoutes(app) {
|
|
|
2661
2700
|
if (!isExpectedAuthFailure(e)) {
|
|
2662
2701
|
captureAuthError(e, { route: "signup", email });
|
|
2663
2702
|
}
|
|
2664
|
-
|
|
2665
|
-
|
|
2703
|
+
const authError = publicAuthError(e, "Registration failed");
|
|
2704
|
+
setResponseStatus(event, authError.statusCode ?? 409);
|
|
2705
|
+
return { error: authError.message };
|
|
2666
2706
|
}
|
|
2667
2707
|
}));
|
|
2668
2708
|
app.use("/_agent-native/auth/logout", defineEventHandler(async (event) => {
|