fix: builder column classes only – no 4_5, all breakpoints checked (S49)

New rows no longer accept 4_5 (the builder does not offer it). On update,
the flexType of every non-desktop breakpoint (tablet, phone, …) is
format-checked against the builder list like desktop. Guide updated.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01At3V6SjwbMe6eMzVGW3Hs7
This commit is contained in:
2026-09-26 18:34:45 +02:00
co-authored by Claude Opus 5.5
parent e04a5304f7
commit eda592548e
4 changed files with 103 additions and 18 deletions
@@ -29,6 +29,14 @@ final class ColumnWidthsTest extends TestCase
self::assertStringContainsString('volle Zeile', (string) ColumnWidths::parse('1_2,1_3')['error']);
}
/** Ruling S49: new rows use only widths the builder offers – 4_5 is no builder column class. */
public function testFourFifthsIsNoInsertWidth(): void
{
self::assertSame(['widths' => ['24_24'], 'error' => 'Spaltenbreite 4_5 gibt es in Divi nicht'], ColumnWidths::parse('1_5,4_5'));
self::assertNotNull(ColumnWidths::rowError(['1_5', '4_5']));
self::assertSame(['widths' => ['1_5', '2_5', '2_5'], 'error' => null], ColumnWidths::parse('1_5,2_5,2_5'));
}
/** Ruling S43: the builder's column classes. */
public function testColumnClassesAreTheBuilderList(): void
{