21 lines
1.3 KiB
PowerShell
21 lines
1.3 KiB
PowerShell
$ErrorActionPreference = 'Stop'
|
|
$root = Split-Path $PSScriptRoot -Parent
|
|
$page = [System.IO.File]::ReadAllText((Join-Path $root 'pages/genealogy/g10-application-review.vue'), [System.Text.Encoding]::UTF8)
|
|
|
|
foreach ($expected in @(
|
|
'background: url("/static/assets/modules/genealogy/transparent/list-slip-frame.png") center / 100% 100% no-repeat',
|
|
'background: url("/static/assets/modules/genealogy/transparent/section-divider.png") bottom center / 100% 14rpx no-repeat',
|
|
'grid-template-columns: auto minmax(0, 1fr) auto',
|
|
'padding: 44rpx 52rpx 29rpx 64rpx',
|
|
'grid-area: 1 / 1',
|
|
'z-index: 1',
|
|
'background: url("/static/assets/foundation/transparent/a01-scroll-toast-v3.png") center / 100% 100% no-repeat'
|
|
)) {
|
|
if (-not $page.Contains($expected)) { throw "G10 document-flow contract missing: $expected" }
|
|
}
|
|
if ($page -notmatch '(?s)\.review-feedback\s*\{[^}]*position:\s*fixed;') { throw 'G10 feedback must remain fixed' }
|
|
if ([regex]::Matches($page, 'position\s*:').Count -ne 1) { throw 'G10 must keep only its fixed feedback positioned' }
|
|
if ($page -match 'class="(?:application-card__skin|review-state-card__skin)"|review-intro[^>]*>.*?section-divider\.png|review-feedback[^>]*>\s*<image') { throw 'G10 decorative frames must be container backgrounds' }
|
|
|
|
Write-Output 'G10-DOCUMENT-FLOW-CONTRACT PASS'
|