feat: Sign in with OTM styled as the one primary action (v0.6.1)
names has no local accounts, so OTM sign-in is the only door — style it like the house's primary button instead of a plain text link, with a muted line underneath about Face ID/Touch ID/passkeys, matching the shared first-party sign-in standard. No "other ways to sign in" toggle since there's nothing else to switch to. Also syncs package-lock.json's stale root version and picks up the already-declared tailwindcss/postcss/autoprefixer entries it was missing. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014LCQmFvKshyAJsE8C3B5ET
This commit is contained in:
Generated
+2
-2
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "names-poweredbyotm",
|
"name": "names-poweredbyotm",
|
||||||
"version": "0.1.0",
|
"version": "0.6.1",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "names-poweredbyotm",
|
"name": "names-poweredbyotm",
|
||||||
"version": "0.1.0",
|
"version": "0.6.1",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@otm/account-panel": "0.32.0",
|
"@otm/account-panel": "0.32.0",
|
||||||
"next": "^15.1.0",
|
"next": "^15.1.0",
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "names-poweredbyotm",
|
"name": "names-poweredbyotm",
|
||||||
"version": "0.6.0",
|
"version": "0.6.1",
|
||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "next dev --port 3000",
|
"dev": "next dev --port 3000",
|
||||||
|
|||||||
@@ -419,6 +419,30 @@ h2 {
|
|||||||
text-decoration: underline;
|
text-decoration: underline;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* The "Sign in with OTM" control, styled like the house's one PRIMARY
|
||||||
|
button (see ".wrap button.primary") so it reads as the lead action it is —
|
||||||
|
this app has no local accounts, so OTM is the only door. */
|
||||||
|
.signin.primary {
|
||||||
|
display: inline-flex;
|
||||||
|
align-items: center;
|
||||||
|
border-radius: 9px;
|
||||||
|
padding: 11px 18px;
|
||||||
|
background: var(--accent-dim);
|
||||||
|
border: 1px solid var(--accent-dim);
|
||||||
|
color: #fff;
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
|
||||||
|
.signin.primary:hover {
|
||||||
|
background: var(--accent);
|
||||||
|
border-color: var(--accent);
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.signin-hint {
|
||||||
|
margin: 4px 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
.wrap button.linkish {
|
.wrap button.linkish {
|
||||||
background: none;
|
background: none;
|
||||||
border: none;
|
border: none;
|
||||||
|
|||||||
@@ -57,8 +57,15 @@ export function AiControls({
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
if (platformAi) {
|
if (platformAi) {
|
||||||
|
// The lead (and only) action — this app has no local accounts, so there's
|
||||||
|
// no "other ways to sign in" to swap to. Styled as the house's one
|
||||||
|
// PRIMARY button, matching the shared first-party sign-in standard.
|
||||||
return (
|
return (
|
||||||
<a className="signin" href={otmSsoUrl("/")} title="Free OTM account · adds AI-generated names">
|
<a
|
||||||
|
className="signin primary"
|
||||||
|
href={otmSsoUrl("/")}
|
||||||
|
title="Free OTM account · adds AI-generated names"
|
||||||
|
>
|
||||||
Sign in with OTM for AI names →
|
Sign in with OTM for AI names →
|
||||||
</a>
|
</a>
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -318,6 +318,12 @@ export default function Finder() {
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
{platformAi && !account ? (
|
||||||
|
<p className="hint signin-hint">
|
||||||
|
Your OTM account — Face ID, Touch ID or a passkey works there.
|
||||||
|
</p>
|
||||||
|
) : null}
|
||||||
|
|
||||||
{aiOn ? (
|
{aiOn ? (
|
||||||
<div className="field brief">
|
<div className="field brief">
|
||||||
<label htmlFor="brief">Tell the AI more (optional)</label>
|
<label htmlFor="brief">Tell the AI more (optional)</label>
|
||||||
|
|||||||
+8
-1
@@ -2,7 +2,7 @@
|
|||||||
// /changelog. Bump VERSION and prepend an entry when shipping a user-facing
|
// /changelog. Bump VERSION and prepend an entry when shipping a user-facing
|
||||||
// change. Same convention as rpo.
|
// change. Same convention as rpo.
|
||||||
|
|
||||||
export const VERSION = "0.6.0";
|
export const VERSION = "0.6.1";
|
||||||
|
|
||||||
export interface ChangelogEntry {
|
export interface ChangelogEntry {
|
||||||
version: string;
|
version: string;
|
||||||
@@ -11,6 +11,13 @@ export interface ChangelogEntry {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export const CHANGELOG: ChangelogEntry[] = [
|
export const CHANGELOG: ChangelogEntry[] = [
|
||||||
|
{
|
||||||
|
version: "0.6.1",
|
||||||
|
date: "2026-10-18",
|
||||||
|
changes: [
|
||||||
|
"Sign in with OTM is now styled as the one primary action it is, with a line about Face ID/Touch ID/passkeys underneath — matching the shared first-party sign-in standard. No accounts live here, so there's nothing else to switch to.",
|
||||||
|
],
|
||||||
|
},
|
||||||
{
|
{
|
||||||
version: "0.6.0",
|
version: "0.6.0",
|
||||||
date: "2026-08-17",
|
date: "2026-08-17",
|
||||||
|
|||||||
Reference in New Issue
Block a user