feat(#534): add OAuth provider management screen + credential_warning surfacing (#566)

* feat(#534): add OAuth provider management screen + credential_warning surfacing

* style(#534): fix ktlint import-ordering in ProvidersViewModel

* fix(#534): address agy review — terminal DONE/ERROR dialog states + PKCE browser launch

* fix(#534): add Done/Close dialog strings

* fix(#534): address agy review - terminal DONE/ERROR dialog states, real PKCE browser launch, clear flow state

---------

Co-authored-by: M57 <m57@hermes-control.app>
This commit is contained in:
M57andM57 authored and GitHub committed 2026-07-12 21:10:11 +03:00
1 parent ad87cd1054
commit 9e10c813d4
11 files changed
+1389 -12

No files matched your search

+22
View File
@@ -72,6 +72,7 @@
<string name="screen_achievements">Achievements</string>
<string name="screen_history">History</string>
<string name="screen_processes">Processes</string>
<string name="screen_providers">Providers</string>
<string name="screen_analytics">Analytics</string>
<!-- Notifications -->
@@ -845,6 +846,27 @@
<string name="loading_state_subtitle_default">Loading…</string>
<string name="loading_state_subtitle_models">Fetching model providers…</string>
<string name="loading_state_subtitle_channels">Loading channels…</string>
<string name="loading_state_subtitle_providers">Loading OAuth providers…</string>
<!-- Providers Screen (issue #534) -->
<string name="providers_empty_title">No OAuth providers</string>
<string name="providers_empty_desc">Configured OAuth providers will appear here. Connect an account to use it from the app.</string>
<string name="providers_action_connect">Connect</string>
<string name="providers_action_how_to_connect">How to connect</string>
<string name="providers_action_disconnect">Disconnect</string>
<string name="providers_action_in_progress">In progress…</string>
<string name="providers_action_submit_code">Submit code</string>
<string name="providers_action_open_browser">Open browser to authorize</string>
<string name="providers_external_hint">This provider is managed by an external CLI. Run the command below on the host, then refresh this list.</string>
<string name="providers_pkce_paste_hint">Authorize in the browser, then paste the authorization code (the part before any # separator) below.</string>
<string name="providers_code_label">Authorization code</string>
<string name="providers_device_code_hint">Enter this code at the verification URL on another device, then wait — this screen polls automatically.</string>
<string name="providers_expires_in">Expires in %1$s</string>
<string name="providers_flow_success">OAuth connected successfully.</string>
<string name="providers_action_fix">Fix</string>
<string name="action_dismiss">Dismiss</string>
<string name="action_done">Done</string>
<string name="action_close">Close</string>
<!-- Processes Screen (issue #532) -->
<string name="processes_empty_title">No running processes</string>