diff --git a/frontend/src/admin/AdminDialogs.vue b/frontend/src/admin/AdminDialogs.vue index 8b456f3..773e390 100644 --- a/frontend/src/admin/AdminDialogs.vue +++ b/frontend/src/admin/AdminDialogs.vue @@ -95,6 +95,15 @@ const lockoutWarning = computed(() => { return pageOriginAllowed(d.origins || [], rpId) ? null : window.location.host }) +// Whether any origin diagnostic is present (guards the list against +// occupying dialog spacing when empty) +const hasOriginDiagnostics = computed(() => { + const d = props.dialog?.data + if (props.dialog?.type !== 'domain-edit' || !d) return false + if (d.originValidation?.some(v => v === 'invalid' || v === 'unreachable' || v === 'mismatch')) return true + return relatedEntries.value.length > 5 || !!lockoutWarning.value +}) + function pageOriginAllowed(rows, rpId) { const toUrl = key => (isWildcardEntry(key) || key.includes('://')) ? key : 'https://' + key const inDomain = [] @@ -511,17 +520,19 @@ function onRemoveOrigin(i) { -

Some entries are invalid โ€” a bare '*' or '**' is not allowed, and wildcards only within the domain.

-

Some sites are unreachable โ€” make sure they are routed to this instance.

-

Some sites are reachable but do not serve this domain.

- Only the listed sites may sign in with {{ dialog.data.rp_id }} passkeys. Wildcards may be used: **.{{ dialog.data.rp_id }} allows the whole domain, *.{{ dialog.data.rp_id }} only a single subdomain level. + Only the listed sites may sign in with {{ dialog.data.rp_id }} passkeys. Wildcards may be used: **.{{ dialog.data.rp_id }} allows the whole domain, *.{{ dialog.data.rp_id }} only a single subdomain level.

-

Saving would lock you out: {{ lockoutWarning }} could no longer run sign-in ceremonies for this domain. Keep it listed, or mark an auth host.

+