diff --git a/frontend/src/admin/AdminDialogs.vue b/frontend/src/admin/AdminDialogs.vue index dd88d34..4babce8 100644 --- a/frontend/src/admin/AdminDialogs.vue +++ b/frontend/src/admin/AdminDialogs.vue @@ -96,45 +96,6 @@ function copyText(value, label) {

A domain ({{ rpId }} or subdomain) restricts this permission to that host. An OIDC client UUID sends it as a groups claim to that client.

- diff --git a/frontend/src/admin/AdminOidcDetail.vue b/frontend/src/admin/AdminOidcDetail.vue index 8fa36e6..3b191a9 100644 --- a/frontend/src/admin/AdminOidcDetail.vue +++ b/frontend/src/admin/AdminOidcDetail.vue @@ -125,27 +125,37 @@ defineExpose({ focusFirstElement })

Configure these values in the client application.

-
Auth Name (opt)
-
paskia
+
Authentication Name
+
+ {{ authStore.settings.rp_name }} + (Login With, may affect URLs – optional) +
Discovery URL
-
{{ discoveryUrl }}
+
{{ discoveryUrl }}
Client ID
-
{{ clientId }}
+
{{ clientId }}
Client Secret
-
{{ clientSecret }}
-
(only stored in hashed form)
+
+ {{ clientSecret }} + (only stored in hashed form) +
+ +
Groups
- No permissions defined. + (no permissions defined)
@@ -236,17 +246,18 @@ defineExpose({ focusFirstElement }) .oidc-dl dd { margin: 0; - cursor: pointer; overflow: hidden; + display: flex; + align-items: baseline; + gap: 0.5em; } .oidc-dl output { font-family: var(--font-mono, monospace); - font-size: 0.85rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; - display: block; + min-width: 0; } .warning-text { @@ -254,9 +265,8 @@ defineExpose({ focusFirstElement }) margin: var(--space-sm) 0 0 0; } -.oidc-groups { cursor: default; } -.oidc-group { cursor: pointer; } -.oidc-group output { white-space: normal; word-break: break-all; } +.oidc-group { display: block; } +.oidc-group { white-space: normal; word-break: break-all; } .oidc-divider { border: none; diff --git a/frontend/src/assets/style.css b/frontend/src/assets/style.css index 65d5f9d..b3d6141 100644 --- a/frontend/src/assets/style.css +++ b/frontend/src/assets/style.css @@ -279,6 +279,10 @@ button:disabled { filter: opacity(0.6); } +output[title="Click to copy"] { + cursor: pointer; +} + .btn-primary { background: linear-gradient(to bottom, oklch(1 0 0 / 0.15), transparent 60%) var(--color-accent); color: var(--color-accent-contrast); diff --git a/paskia/util/apistructs.py b/paskia/util/apistructs.py index 514d954..f624332 100644 --- a/paskia/util/apistructs.py +++ b/paskia/util/apistructs.py @@ -111,9 +111,8 @@ class ApiSession(msgspec.Struct, omit_defaults=True): user_agent=useragent.compact_user_agent(s.user_agent), last_renewed=s.expiry - expires_delta, is_current=s.key == current_key, - is_current_host=not s.client_uuid and bool( - normalized_host and s.host and s.host == normalized_host - ), + is_current_host=not s.client_uuid + and bool(normalized_host and s.host and s.host == normalized_host), client_uuid=s.client_uuid, client_name=client_name, )