完成50%

This commit is contained in:
2026-07-23 08:23:59 +08:00
parent 9b0ad62df4
commit f1edc6b533
218 changed files with 24318 additions and 5514 deletions
+27 -15
View File
@@ -17,6 +17,7 @@ $root = Split-Path -Parent $PSScriptRoot
$pages = Get-Content -LiteralPath (Join-Path $root 'pages.json') -Raw -Encoding utf8 | ConvertFrom-Json
$paths = @($pages.pages.path)
$g06 = Get-Content -LiteralPath (Join-Path $root 'pages/genealogy/g06-search-genealogies.vue') -Raw -Encoding utf8
$mock = Get-Content -LiteralPath (Join-Path $root 'data/mock.js') -Raw -Encoding utf8
$profiles = Get-Content -LiteralPath (Join-Path $root 'styles/adaptive-frame-profiles.scss') -Raw -Encoding utf8
$g07 = Join-Path $root 'pages/genealogy/g07-search-result.vue'
$inputSkinPath = Join-Path $root 'static/assets/modules/genealogy/opaque/g06-search-input-wide.png'
@@ -30,20 +31,13 @@ foreach ($required in @(
'const mode = ref("search")',
'const searchState = ref("initial")',
'const inviteState = ref("initial")',
'const resultFixtures = [',
'relation: "available"',
'relation: "joined"',
'relation: "pending"',
'relation: "rejected"',
'relation: "removed"',
'relation: "owned"',
'parentName:',
'branchName:',
'manager:',
'certification:',
'/pages/genealogy/g08-join-application?source=search&genealogyId=',
'/pages/genealogy/g08-join-application?source=invite&genealogyId=',
'/pages/genealogy/g05-genealogy-overview?mode=public&genealogyId=',
'getGenealogyFixtureAccess,',
'isGenealogySearchVisible,',
'publicGenealogies,',
'const resultActionLabel = (item) =>',
'const resultRelationLabel = (item) =>',
'getGenealogyFixtureAccess(String(item.id)).canApply',
'isGenealogySearchVisible(String(item.id))',
'search-page__header',
'adaptive.adaptive-g06-search-field',
'adaptive.adaptive-g06-search-action',
@@ -53,10 +47,28 @@ foreach ($required in @(
'search-initial',
'search-results',
'search-empty',
'search-action'
'search-action',
'const invalidateSearch = () =>',
'if (searchTimer !== timer || mode.value !== "search") return;',
'@input="resetInvite"',
'if (inviteState.value !== "valid") return false;'
)) {
Assert-Contains -Content $g06 -Expected $required -Message "Missing G06 flow contract: $required"
}
foreach ($required in @(
"relation: 'available'",
"relation: 'joined'",
"relation: 'pending'",
"relation: 'rejected'",
"relation: 'removed'",
"relation: 'owned'",
'parentName:',
'branchName:',
'manager:',
'certification:'
)) {
Assert-Contains -Content $mock -Expected $required -Message "Missing shared G06 fixture contract: $required"
}
foreach ($assetName in @('g06-search-input-wide.png', 'g06-search-button.png')) {
Assert-Contains $profiles $assetName "Adaptive G06 profile must own: $assetName"
}