public/kundenansicht.js hängt bei 409 view_replaced und 401 view_expired .kb-view-overlay an den Body; die Regeln dafür standen nur in der alten kundenbereich.css. In der neuen Seite entstand ein unformatierter Absatz mit nacktem Knopf unter der Leiste. Jetzt: fixiert, deckend weiß, über Konto und Leiste, Text und Knopf "Tab schließen" (44 px, schwarz). Pin in test/knEfixCss.test.js, Ansicht kn-huelle-sperre im Werkzeug. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
27 lines
1.3 KiB
JavaScript
27 lines
1.3 KiB
JavaScript
import { test } from 'node:test'
|
|
import assert from 'node:assert/strict'
|
|
import { lies } from './support/knHuelle.js'
|
|
|
|
// Abschlussprüfung Phase E (Fix-Welle): Pins für die CSS-Befunde der neuen Seite. Sie lesen nur Quelltext, kein Browser.
|
|
const HUELLE = lies('huelle.css')
|
|
const regel = (css, selektor) => {
|
|
const m = css.match(new RegExp(`(?:^|\\n)${selektor.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')}\\s*\\{([^}]*)\\}`))
|
|
return m ? m[1] : ''
|
|
}
|
|
|
|
test('F2: die Sperre der Mitarbeiter-Kundenansicht (.kb-view-overlay) ist in der neuen Seite eine echte Sperre', () => {
|
|
const o = regel(HUELLE, '.kb-view-overlay')
|
|
assert.match(o, /position:\s*fixed/)
|
|
assert.match(o, /inset:\s*0\b/)
|
|
assert.match(o, /z-index:\s*(\d{3,})/) // über Konto (60), Leiste (40) und Banner
|
|
assert.ok(Number(o.match(/z-index:\s*(\d+)/)?.[1]) > 60)
|
|
assert.match(o, /background:\s*var\(--kn-bg\)/) // deckend weiß, kein Glas, kein rgba mit Durchsicht
|
|
assert.doesNotMatch(o, /rgba|transparent|opacity/)
|
|
const karte = regel(HUELLE, '.kb-view-overlay-card')
|
|
assert.match(karte, /max-width:\s*\d+px/)
|
|
const knopf = regel(HUELLE, '.kb-view-overlay-card button')
|
|
assert.match(knopf, /min-height:\s*44px/)
|
|
assert.match(knopf, /background:\s*var\(--kn-accent\)/)
|
|
assert.match(regel(HUELLE, '.kb-view-overlay-card p'), /font-size:\s*\d+px/)
|
|
})
|