shadowdaoandClaude Opus 5.5 96274a6aa8 fix(sitesmith): contrast repair resolves the real background (gradients, shorthand, section props)
Contrast auto-repair read only style.backgroundColor / bgColor, so white text on a
gradient hero (style.background) was "repaired" against the white page colour.

- Resolve style.background (solid shorthand, gradient, url), HeroSimple bgGradient*/
  bgColor defaults, CallToAction bgValue, BackgroundSection bgColor, opaque image overlay.
- Gradients: every stop is checked, worst stop decides; unparseable stops (color-mix,
  unresolved token, translucent, layered) = not checked. An unresolvable background no
  longer falls through to an outer/page colour.
- A repair is applied only if it reaches the target and strictly beats the old colour
  against the worst stop.
- clamp() font sizes use their minimum for the large-text test.
- Patch path: ancestor background now comes from effectiveBackgroundOf (which learns
  style.background shorthand and section props) instead of a private walker.
- Tests: real ttm-likes and ols-home responses as fixtures.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-01 15:31:34 -08:00
S
Description
Visual drag-and-drop website builder using GrapesJS
6.5 MiB
0 Stars 6 Watchers 0 Forks
Languages
TypeScript 75.9%
JavaScript 12.3%
HTML 8.6%
CSS 2.6%
PHP 0.4%
Other 0.2%