feat(ui): standardize accessibility, contrast, and spacing#719
Conversation
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Scanned FilesNone |
Manifest Changes vs v0.1.0-beta.28baseShow diff--- manifests-previous/base.yaml 2026-06-23 14:38:43.781833424 +0000
+++ manifests-current/base.yaml 2026-06-23 14:38:36.030649904 +0000
@@ -22788,8 +22788,10 @@
- namespace
type: object
insecureSkipVerify:
- description: InsecureSkipVerify allows skipping TLS verification
- (NOT for production!)
+ description: |-
+ InsecureSkipVerify is not supported for Keycloak group synchronization.
+ Admission and runtime auth/OIDC proxy paths reject this setting; configure
+ certificateAuthority for private or self-signed Keycloak certificates.
type: boolean
realm:
description: Realm is the Keycloak realm name
@@ -22844,8 +22846,10 @@
pattern: ^\S+$
type: string
insecureSkipVerify:
- description: InsecureSkipVerify allows skipping TLS verification
- (NOT for production!)
+ description: |-
+ InsecureSkipVerify is deprecated for IdentityProvider OIDC/JWKS authentication.
+ Admission and runtime auth/OIDC proxy paths reject this setting; configure
+ certificateAuthority for private or self-signed issuer certificates.
type: boolean
jwksEndpoint:
description: |-debugShow diff--- manifests-previous/debug.yaml 2026-06-23 14:38:44.136842022 +0000
+++ manifests-current/debug.yaml 2026-06-23 14:38:36.404658712 +0000
@@ -22788,8 +22788,10 @@
- namespace
type: object
insecureSkipVerify:
- description: InsecureSkipVerify allows skipping TLS verification
- (NOT for production!)
+ description: |-
+ InsecureSkipVerify is not supported for Keycloak group synchronization.
+ Admission and runtime auth/OIDC proxy paths reject this setting; configure
+ certificateAuthority for private or self-signed Keycloak certificates.
type: boolean
realm:
description: Realm is the Keycloak realm name
@@ -22844,8 +22846,10 @@
pattern: ^\S+$
type: string
insecureSkipVerify:
- description: InsecureSkipVerify allows skipping TLS verification
- (NOT for production!)
+ description: |-
+ InsecureSkipVerify is deprecated for IdentityProvider OIDC/JWKS authentication.
+ Admission and runtime auth/OIDC proxy paths reject this setting; configure
+ certificateAuthority for private or self-signed issuer certificates.
type: boolean
jwksEndpoint:
description: |-crdsShow diff--- manifests-previous/crds.yaml 2026-06-23 14:38:45.184867407 +0000
+++ manifests-current/crds.yaml 2026-06-23 14:38:36.732666437 +0000
@@ -22780,8 +22780,10 @@
- namespace
type: object
insecureSkipVerify:
- description: InsecureSkipVerify allows skipping TLS verification
- (NOT for production!)
+ description: |-
+ InsecureSkipVerify is not supported for Keycloak group synchronization.
+ Admission and runtime auth/OIDC proxy paths reject this setting; configure
+ certificateAuthority for private or self-signed Keycloak certificates.
type: boolean
realm:
description: Realm is the Keycloak realm name
@@ -22836,8 +22838,10 @@
pattern: ^\S+$
type: string
insecureSkipVerify:
- description: InsecureSkipVerify allows skipping TLS verification
- (NOT for production!)
+ description: |-
+ InsecureSkipVerify is deprecated for IdentityProvider OIDC/JWKS authentication.
+ Admission and runtime auth/OIDC proxy paths reject this setting; configure
+ certificateAuthority for private or self-signed issuer certificates.
type: boolean
jwksEndpoint:
description: |- |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #719 +/- ##
==========================================
- Coverage 69.46% 69.45% -0.01%
==========================================
Files 160 160
Lines 33892 33892
==========================================
- Hits 23542 23540 -2
- Misses 8801 8802 +1
- Partials 1549 1550 +1
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
📸 UI ScreenshotsCaptured 44 screenshots (11 light, 11 dark, 22 high-contrast mode) 📥 Download
Pages Captured
Screenshots are generated automatically on each PR that modifies frontend code. |
b5c32a3 to
d0332f8
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 22 out of 22 changed files in this pull request and generated 2 comments.
Comments suppressed due to low confidence (1)
frontend/src/views/DebugSessionDetails.vue:806
- These action bars were renamed to
modal-actions, but the<style scoped>section still contains.form-actionsand.dialog-actionsrules that are no longer referenced anywhere in this file. Keeping unused per-view layout rules increases maintenance burden and can conflict with the new global action-bar utilities inbase.css.
<scale-text-field
v-model="ephemeralForm.command"
label="Command (optional)"
placeholder="sh"
helper-text="Command to run in the container (space-separated)"
/>
<div class="modal-actions">
<scale-button variant="secondary" size="small" @click="showKubectlDebugForm = false">
Cancel
</scale-button>
<scale-button
variant="primary"
size="small"
:disabled="kubectlDebugLoading"
@click="handleInjectEphemeralContainer"
>
{{ kubectlDebugLoading ? "Injecting..." : "Inject Container" }}
</scale-button>
</div>
| scaleMobileFlyoutDefined.value = isScaleMobileFlyoutDefined(); | ||
| if (!scaleMobileFlyoutDefined.value && typeof customElements !== "undefined" && "whenDefined" in customElements) { | ||
| void customElements.whenDefined("scale-telekom-nav-flyout").then(() => { | ||
| scaleMobileFlyoutDefined.value = true; | ||
| }); | ||
| } |
| <!-- Show status message for failed/rejected sessions --> | ||
| <div | ||
| v-if="session.statusMessage && (session.state === 'Failed' || session.state === 'Rejected')" | ||
| class="status-message error" | ||
| class="status-message tone-chip tone-chip--danger" | ||
| data-testid="status-message" | ||
| > | ||
| <scale-icon-alert-error size="16"></scale-icon-alert-error> | ||
| <scale-icon-alert-error size="16" decorative></scale-icon-alert-error> | ||
| <span>{{ session.statusMessage }}</span> |
This PR standardizes the UI across all views to meet WCAG AAA accessibility requirements, except documented Telekom magenta brand elements retained at WCAG AA by product decision, and Telekom Scale Design System guidelines.
Key changes:
ui-utility classes.sr-only) to all toolbar filters and toggles.