IssuesLayout
How an IssuesBlock arranges its issues — and with which cell, since not every cell suits every arrangement, so the two are chosen together and an impossible pair cannot be asked for.
The two cover cells, IssueCoverStyle.Standard and IssueCoverStyle.Brand, have a cover's footprint: they ride a carousel or fill a grid. The rich cell is a full-width row, the cover on the left and the text on the right: it only reads one under the other — richList.
Sizes, spacings, column counts and the slice of the next cover left showing are not configurable: a block looks like CGS content wherever it is dropped, and each arrangement carries the column ladder the design gives its shape.
A grid and a vertical list capped with limit take the room of their rows and sit in the host's scrolling column; uncapped, either scrolls and paginates on its own and must be given bounded height.
Instances are created through the factories on the companion object rather than a constructor, so new arrangements can be added without breaking binary compatibility. Each one resolves, once and here, to the arrangement the renderer switches on and the cell the block draws — there is no third thing to derive downstream, and no combination of flags that names a cell the design system does not have.