fix ui auth forms and stabilize baseline tests

This commit is contained in:
Codex
2026-02-18 15:22:06 +00:00
parent 737aac1ef0
commit 331b66506a
3 changed files with 47 additions and 23 deletions

View File

@@ -220,27 +220,50 @@ function renderLoginPage({ returnTo = "/app", error = null }) {
<div class="card bg-base-100 border border-base-content/10 shadow-sm">
<div class="card-body p-6">
${errorBlock}
<form method="POST" action="/auth/dev-login" class="space-y-4">
<form method="POST" action="/auth/x" class="mb-6">
<input type="hidden" name="returnTo" value="${escapeHtml(returnTo)}" />
<div class="form-control">
<label class="label">
<span class="label-text font-medium">Username</span>
</label>
<input name="userId" required minlength="2" maxlength="40" class="input input-bordered w-full" placeholder="Enter your username" />
</div>
<button class="btn btn-outline w-full">Continue with X</button>
</form>
<div class="divider text-xs text-base-content/40 my-6">Email</div>
<form method="POST" action="/auth/email/sign-in" class="space-y-3">
<input type="hidden" name="returnTo" value="${escapeHtml(returnTo)}" />
<label class="form-control">
<span class="label-text font-medium mb-1">Email</span>
<input name="email" type="email" required class="input input-bordered w-full" placeholder="you@domain.com" />
</label>
<label class="form-control">
<span class="label-text font-medium mb-1">Password</span>
<input name="password" type="password" required minlength="8" maxlength="128" class="input input-bordered w-full" placeholder="••••••••" />
</label>
<button class="btn btn-primary w-full shadow-sm hover:shadow">Sign in</button>
</form>
<div class="divider text-xs text-base-content/40 my-6">OR</div>
<div class="text-center text-sm">
<p class="text-base-content/60">Don't have an account? <a href="#" class="link link-primary font-medium hover:underline">Contact us</a></p>
<div class="divider text-xs text-base-content/40 my-6">Create account</div>
<form method="POST" action="/auth/email/sign-up" class="space-y-3">
<input type="hidden" name="returnTo" value="${escapeHtml(returnTo)}" />
<label class="form-control">
<span class="label-text font-medium mb-1">Name</span>
<input name="name" required minlength="2" maxlength="80" class="input input-bordered w-full" placeholder="Matiss" />
</label>
<label class="form-control">
<span class="label-text font-medium mb-1">Email</span>
<input name="email" type="email" required class="input input-bordered w-full" placeholder="you@domain.com" />
</label>
<label class="form-control">
<span class="label-text font-medium mb-1">Password</span>
<input name="password" type="password" required minlength="8" maxlength="128" class="input input-bordered w-full" placeholder="••••••••" />
</label>
<button class="btn btn-ghost border border-base-content/20 w-full">Create account</button>
</form>
<div class="text-center text-xs text-base-content/50 mt-2">
X sign-in requires X_OAUTH_CLIENT_ID and X_OAUTH_CLIENT_SECRET.
</div>
</div>
</div>
<p class="text-center text-xs text-base-content/40 mt-6 font-mono">Dev mode: Enter any username to create a session.</p>
</div>
</div>
`,