Revamped InteractiveLayout based on grid module - #15891
Conversation
4595911 to
94b78f8
Compare
| // Note, this class MUST be on the *direct parent* of the | ||
| // elements for some legacy interactive styling to work. | ||
| format.design === ArticleDesign.Interactive | ||
| format.design === ArticleDesign.Interactive && |
There was a problem hiding this comment.
Why this legacy class was still being applied: #3113
0c1d6dd to
f7b9ea8
Compare
f7b9ea8 to
bfb066d
Compare
|
Blocked behind a discussion of how interactives age (Mission: Janitor) |
9117280 to
ba2aa3a
Compare
c9dfd48 to
da367a6
Compare
63eb9b4 to
95a129e
Compare
|
@copilot resolve the merge conflicts in this pull request |
Merge conflicts resolved. The only conflict was |
|
@copilot resolve the merge conflicts in this pull request |
Merge conflicts resolved in commit
|
5b96acf to
ddc7196
Compare
|
Please rebase this branch against
Please rebase this branch against |
e25209c to
7d63d0f
Compare
|
I'm still digging into this change and what it means for interactives developers, I'll come back to you with a full review in the coming days, but some initial thoughts...
|
|
Following up on our chat before Fred, the only thing I didn't mention in my last comment was the point about the left-column-body border. It being You said you'd already considered keeping the borders as actual elements, but I do think this approach would stand up to page hacking more than ::before's would. Accidentally moving them would be harder, as you'd need to explicitly move the border elements, versus whatever element the ::before is attached to. Otherwise, this is all looking good! |
9d9ff56 to
556a25f
Compare
|
Hello 👋! When you're ready to run Chromatic, please apply the You will need to reapply the label each time you want to run Chromatic. |
556a25f to
160b647
Compare
160b647 to
ee74010
Compare


Part of the grid module cinematic universe (see #15428, #16119, #16133, #16251) for context), this updates
InteractiveLayoutto use the grid module, and adjusts layout routing to send older pieces to the older setup.This is near identical to the implementation for
StandardLayoutsave for one key difference. Here the article body itself uses the same grid system. This is to allow for Ed Design in particular to create bespoke article layouts easily. I wonder if this is actually preferable even for non-interactive articles? We could snap elements to the grid rather than using hardcoded negative margins.The PR also does away with the legacy
content__main-column--interactiveclass on the article body, which had lingered longer than it probably should.Why
StandardLayout(if there's appetite for that)StandardLayoutthis will make it much easier to add new header/furniture arrangements as first class citizens of the platformsA few open questions
::beforeelement for centre rules with a more hackable div?Switchover
Discussion around how to handle older interactive articles is ongoing. This current working approach is to version the content section of the layout depending on date.
Some open questions:
Screenshots