Pause Google one-click connect pending CASA verification

Gmail/Calendar/Drive show a disabled Coming-soon button; the server refuses the flow too.
Manual token connect and already-connected accounts are untouched.
This commit is contained in:
Rohit C Prasad
2026-07-23 07:43:24 -07:00
committed by Rohit P
parent 71b0df8ea2
commit 2a2fffd280
11 changed files with 159 additions and 13 deletions
+16 -2
View File
@@ -824,7 +824,21 @@ export function ConnectSetup({
)}
{c.managed && !c.mcp && !manualOnly && (
<div className="space-y-2" data-testid="managed-connect">
{cloud?.signed_in ? (
{c.managed_paused ? (
// One-click temporarily off (e.g. Google pending CASA verification):
// a visibly-parked button, and the manual path below stays fully live.
<>
<button className={BTN_ACCENT + " opacity-50"} disabled data-testid="managed-coming-soon">
{`Connect ${c.title} with one click`}
<span className="ml-2 text-[11px] font-medium px-1.5 py-0.5 rounded-full bg-white/25">
Coming soon
</span>
</button>
<div className="text-[11.5px] text-faint">
One-click sign-in is coming soon connect manually below for now:
</div>
</>
) : cloud?.signed_in ? (
<button className={BTN_ACCENT} onClick={oneClick} disabled={waiting}>
{waiting ? "Check your browser…" : `Connect ${c.title} with one click`}
</button>
@@ -837,7 +851,7 @@ export function ConnectSetup({
// possibly-signed-in user (FB-013); the host keeps polling.
<CloudStatusPending />
)}
{cloud?.signed_in && (
{!c.managed_paused && cloud?.signed_in && (
<div className="text-[11.5px] text-faint">or connect manually:</div>
)}
</div>
@@ -46,13 +46,19 @@ export function CalendarDetail({ c, cloud, slack: _slack, onChanged }: DetailPro
</div>
</div>
<button
className={PILL_ACCENT}
className={PILL_ACCENT + (c.managed_paused ? " opacity-50" : "")}
data-testid="add-account-btn"
onClick={addAccount}
disabled={busy || !cloud?.signed_in}
title={cloud?.signed_in ? "" : "Sign in to OpenWorker Cloud first"}
disabled={busy || !cloud?.signed_in || c.managed_paused}
title={
c.managed_paused
? "One-click Google sign-in is coming soon"
: cloud?.signed_in
? ""
: "Sign in to OpenWorker Cloud first"
}
>
{busy ? "Check your browser…" : " Add account"}
{c.managed_paused ? " Add account · Coming soon" : busy ? "Check your browser…" : " Add account"}
</button>
</div>
@@ -48,13 +48,19 @@ export function GmailDetail({ c, cloud, slack: _slack, onChanged }: DetailProps)
</div>
</div>
<button
className={PILL_ACCENT}
className={PILL_ACCENT + (c.managed_paused ? " opacity-50" : "")}
data-testid="add-account-btn"
onClick={addAccount}
disabled={busy || !cloud?.signed_in}
title={cloud?.signed_in ? "" : "Sign in to OpenWorker Cloud first"}
disabled={busy || !cloud?.signed_in || c.managed_paused}
title={
c.managed_paused
? "One-click Google sign-in is coming soon"
: cloud?.signed_in
? ""
: "Sign in to OpenWorker Cloud first"
}
>
{busy ? "Check your browser…" : " Add account"}
{c.managed_paused ? " Add account · Coming soon" : busy ? "Check your browser…" : " Add account"}
</button>
</div>