Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,14 @@ key_refused`; against an older backend the previous behaviour stands.
only way out was **Back** or the five-minute timeout. The URL now survives
until the sign-in ends.
([#351](https://github.com/quickbeard/codev-code/pull/351))
- **The desktop sign-in shows the link, not just a Copy button** — the SSO step
now prints the sign-in URL above **Open login page** and **Copy link**, so
you can see where you are being sent, select part of it, or read it across to
a phone when the browser cannot open on this machine. Before, the link
existed only behind those two buttons — and if the browser never opened,
**Copy link** was a blind promise with nothing to check it against. The
terminal app has always printed the link; the desktop app now matches.
([#356](https://github.com/quickbeard/codev-code/pull/356))
- **Backing out of a sign-in actually stops it** — **Back** in the desktop
dialog, **Log out**, and now **esc** on the TUI's SSO step abort the attempt:
the local callback listener closes and a browser callback that lands
Expand Down
10 changes: 10 additions & 0 deletions packages/app/src/components/gateway/dialog-configure.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -228,6 +228,16 @@ export function DialogConfigure(props: { dismissable?: boolean } = {}) {
{(url) => (
<div class="flex flex-col gap-3">
<p class="text-14-regular text-text-base">{language.t("gateway.configure.sso.pending")}</p>
{/* The link itself, not only the buttons that act on it: when
the browser never opened — or opened on a machine that is
not this one — Copy link is a blind promise, and the URL
is what someone reads across to a phone. Wrapped rather
than truncated, since a clipped authorize URL is
unusable, and selectable so part of it can be taken.
Parity with the TUI, which prints the link. */}
<p class="text-12-mono text-text-weak break-all rounded-md border border-border-base px-3 py-2">
{url()}
</p>
<div class="flex gap-2">
<Button size="small" variant="secondary" onClick={() => platform.openExternal(url())}>
{language.t("gateway.configure.sso.open")}
Expand Down
2 changes: 1 addition & 1 deletion packages/app/src/i18n/en.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1113,7 +1113,7 @@ export const dict = {
"gateway.configure.option.custom.description": "OpenAI-compatible endpoint",
"gateway.configure.option.connect.title": "Connect provider",
"gateway.configure.option.connect.description": "Anthropic, OpenAI, and others",
"gateway.configure.sso.pending": "Complete the login in your browser.",
"gateway.configure.sso.pending": "Complete the login in your browser, or open this link:",
"gateway.configure.sso.open": "Open login page",
"gateway.configure.sso.copy": "Copy link",
"gateway.configure.sso.copied": "Copied",
Expand Down
2 changes: 1 addition & 1 deletion packages/app/src/i18n/es.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1107,7 +1107,7 @@ export const dict = {
"gateway.configure.option.custom.description": "Endpoint compatible con OpenAI",
"gateway.configure.option.connect.title": "Conectar proveedor",
"gateway.configure.option.connect.description": "Anthropic, OpenAI y otros",
"gateway.configure.sso.pending": "Completa el inicio de sesión en tu navegador.",
"gateway.configure.sso.pending": "Completa el inicio de sesión en tu navegador o abre este enlace:",
"gateway.configure.sso.open": "Abrir página de inicio de sesión",
"gateway.configure.sso.copy": "Copiar enlace",
"gateway.configure.sso.copied": "Copiado",
Expand Down
2 changes: 1 addition & 1 deletion packages/app/src/i18n/vi.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1070,7 +1070,7 @@ export const dict = {
"gateway.configure.option.custom.description": "Endpoint tương thích OpenAI",
"gateway.configure.option.connect.title": "Kết nối provider",
"gateway.configure.option.connect.description": "Anthropic, OpenAI và các provider khác",
"gateway.configure.sso.pending": "Hoàn tất đăng nhập trong trình duyệt của bạn.",
"gateway.configure.sso.pending": "Hoàn tất đăng nhập trong trình duyệt của bạn hoặc mở liên kết này:",
"gateway.configure.sso.open": "Mở trang đăng nhập",
"gateway.configure.sso.copy": "Sao chép liên kết",
"gateway.configure.sso.copied": "Đã sao chép",
Expand Down
Loading