diff --git a/internal/check-poster-wall-header-action.mjs b/internal/check-poster-wall-header-action.mjs new file mode 100644 index 000000000..e5bbb8b86 --- /dev/null +++ b/internal/check-poster-wall-header-action.mjs @@ -0,0 +1,200 @@ +#!/usr/bin/env node +/** + * check-poster-wall-header-action.mjs: PosterWall's header sticker does what its headerAction prop says. + * + * WHY. PosterWall's card header was hard-wired to "Show on map". A wall with no map beside it (the + * Poster Design gallery) needs the same card with a different action, so the header became a seam: + * headerAction null (the default) keeps the "Show on map" TOGGLE; { labelKey, ariaKey } makes it a + * plain button that emits 'header-action'. Every existing wall passes nothing, so the default path is + * the one that must not move, and the new path must not leak the old one's side effects (a window + * event a map would act on, aria-pressed, the is-last highlight). + * + * HOW. No browser (fleet policy). PosterWall has no