diff --git a/library/components/poster/PosterSectionView.vue b/library/components/poster/PosterSectionView.vue new file mode 100644 index 000000000..605dc54e6 --- /dev/null +++ b/library/components/poster/PosterSectionView.vue @@ -0,0 +1,65 @@ + + + diff --git a/library/components/poster/PosterWall.vue b/library/components/poster/PosterWall.vue index 73465a0d7..de0946649 100644 --- a/library/components/poster/PosterWall.vue +++ b/library/components/poster/PosterWall.vue @@ -208,6 +208,9 @@ const props = defineProps({ // to count n rather than the section's card count, or null for that section to keep the default. The Country // Posters India section holds India's own card and one per state and union territory, which are not countries. sectionItemCountKey: { type: Function, default: null }, + // SECTION-ONLY: the wall's own head (heading, tag, intro) is not drawn, only its section(s): a standalone poster + // section (). Off by default, so every existing wall renders exactly as before. + sectionOnly: { type: Boolean, default: false }, }) const emit = defineEmits(['header-action']) @@ -1342,9 +1345,11 @@ provide(POSTER_WALL_CTX, { ') }, /^E:/], + ] + for (const [name, inp, rx] of poisons) { + const f = await arms(inp); const ok = f.some((x) => rx.test(x)) + console.log(ok ? `✓ caught: ${name} -> ${f.find((x) => rx.test(x))}` : `✗ MISSED: ${name}`) + if (!ok) code = 1 + } + } else { + const f = await arms(real) + if (f.length) { f.forEach((x) => console.log('FAIL ' + x)); code = 1 } + else console.log(`PASS check:poster-section — the 'country' type; ${DXL.length} DX Life scopes cover every country once (and their other spellings); withheld India stays withheld; the element's attributes; PosterSection injects every name it uses`) + } +} finally { await server.close() } +process.exit(code)