diff --git a/web/sections/PageBuilderPanel.tsx b/web/sections/PageBuilderPanel.tsx index 0328599..57b2178 100644 --- a/web/sections/PageBuilderPanel.tsx +++ b/web/sections/PageBuilderPanel.tsx @@ -44,8 +44,12 @@ const PLACES_ONLY: string[] = [ 'collections', 'pieces', 'collabs', - // The subject blocks hold nothing either: what they draw is the row the URL names. - 'subject-cover', + /* + The subject blocks hold nothing either: what they draw is the row the URL names. + + `subject-cover` is the exception and stays OUT of this list — it holds a `ratio`, which is a real + stored value and needs a settings panel to set it. Everything else here genuinely holds nothing. + */ 'subject-title', 'subject-description', 'subject-specs', @@ -820,6 +824,38 @@ export const PageBuilderPanel = () => { )} + {/* + The lead photograph gets Shape, and only Shape. + + The same framing the media block has had since it existed — a template wanting a letterbox + lead had no way to ask for one. Not the rest of that block's controls: there is no file to + choose, because the picture is the carousel's first item, and no crop to set, because the + crop belongs to the carousel item and two crops for one placement is two answers able to + disagree. + */} + {block.kind === 'subject-cover' && ( +
+ + +
+ )} + {(block.kind === 'media' || block.kind === 'video') && (
{/*