feat(layout,utilities): ship #536, #535; activate #540, #542 into 0.7.0 - #553
Conversation
Adds four opt-in helpers to the still-unreleased 0.7.0: - #536 .sf-header--xs..xl (core/layout.css) — block padding from the --sf-space-* scale, lighter than .sf-section; inline gutter untouched. - #535 .sf-marker--{family} (optional/utilities.css) — colour ::marker on arbitrary lists outside .sf-prose, for the 7 palette families. - #540 .sf-list-none + .sf-selection--alt — un-staged (tokens already live). - #542 .sf-sticky + --s/-m/-l offsets — un-staged (tokens already live). Regenerates docs (classes/api-index/registry + configurator sync), adds demo coverage for .sf-header--*, and documents the new classes in docs/llm-guide.md. All CI gates and the unit suite pass. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015ky5Dk5VzNGD5qPrp3g5fT
|
Warning Review limit reached
Next review available in: 44 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (16)
📝 WalkthroughWalkthroughThis PR adds header spacing classes and activates list, marker, selection, and sticky utilities. It also refreshes generated indexes and docs, updates counts, and trims the documented optional component surface. ChangesHeader spacing and utility surface
Estimated code review effort: 2 (Simple) | ~15 minutes Possibly related PRs
Suggested labels: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
PR Summary by QodoAdd .sf-header padding variants + opt-in list/selection/sticky utilities (0.7.0)
AI Description
Diagram
High-Level Assessment
Files changed (9)
|
Code Review by Qodo
Context used✅ Tickets:
🎫 Small utilities: .sf-list-none and alternate selection (.sf-selection--alt) 🎫 List marker colour utilities (.sf-marker--*) 🎫 Sticky positioning utility (.sf-sticky) + offset sizes (s/m/l) +1 more✅ Compliance rules (platform):
12 rules 1. Sticky offsets lost with state
|
… .sf-card SLASHED keeps exactly two components. Drops the commented-out (staged, 0-byte) component blocks — badge, tag, alert, avatar, modal, skeleton, form layout helpers, and table — from optional/components.css and their reserved token blocks from optional/tokens.components.css. Live .sf-btn, .sf-card, and the card/field/button token knobs are untouched. Emitted CSS is byte-identical (all removed content was commented), so bundles, api-index, registry, and token snapshots are unchanged. docs/components.md is trimmed to reflect the two-component surface and the deliberate no-library stance. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015ky5Dk5VzNGD5qPrp3g5fT
…rose Addresses two Qodo review findings on PR #553: - Marker vs prose (Bug 2): add a :not(.sf-prose *) guard so .sf-marker--* no longer overrides .sf-prose ::marker (prose owns markers via --sf-prose-marker-color; utilities layer after macros). - Family set: narrow to the brand/action families — primary, secondary, tertiary, action — dropping the status/neutral variants. Markers are decorative; status colours are rarely wanted and can be set by hand via `::marker { color }`. Docs/llm-guide updated; regenerated indexes. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015ky5Dk5VzNGD5qPrp3g5fT
These duplicated .sf-sticky, a macro, or a trivial native one-liner and were not genuine runtime states. Removed from core/states.css: .is-sticky .is-pinned .is-fixed .is-fullscreen (→ .sf-sticky / native) .is-truncated (→ .sf-truncate macro) .is-clipped .is-scrollable .is-resizable (trivial overflow/resize) .is-clickable .is-unselectable .is-focused (trivial / :focus-visible) Dropping .is-sticky also resolves the PR #553 sticky-offset cascade bug: it was the only class re-setting inset-block-start after the .sf-sticky offset modifiers, so no additive-token workaround is needed. Kept all genuine runtime/ARIA states (visibility, disabled/readonly, loading/busy/pending/skeleton, active/selected/current/highlighted/pressed, open/collapsed/expanded, validation set, drag & drop, is-overlay, is-empty). Updates demo.html, states.md, llm-guide, roadmap, token-annotations, and the e2e specs (states-full/behavior/demo-visual); regenerates indexes. .is-classes 40 → 29. Gates + unit suite green. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015ky5Dk5VzNGD5qPrp3g5fT
|
Addressed differently than suggested: instead of an additive Generated by Claude Code |
…nded Rebased onto main (#553), which finalized the component and utility surface: - Staged components (badge/tag/alert/avatar/modal/skeleton/table) were removed, not just commented out; .sf-btn and .sf-card are now the only two components SLASHED ships (BEM-first, no broad component library). Drop all 'remaining components staged/commented' wording in README, landing, and architecture.md, including the 'Deferred until components ship' framing. - The utilities layer activated more curated helpers (list-reset, marker, selection, sticky on top of heading/text-size/hover) — 31 active classes. Update the utility descriptions accordingly. - Regenerate demos against the rebased API index: 320 bundled classes (was 316); token count stays 720. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016WH9Q15j1dZYxqTqMoomxq
Adds four opt-in helpers to the still-unreleased 0.7.0:
--sf-space-* scale, lighter than .sf-section; inline gutter untouched.
arbitrary lists outside .sf-prose, for the 7 palette families.
Regenerates docs (classes/api-index/registry + configurator sync), adds
demo coverage for .sf-header--*, and documents the new classes in
docs/llm-guide.md. All CI gates and the unit suite pass.
Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_015ky5Dk5VzNGD5qPrp3g5fT
Summary by CodeRabbit
New Features
sf-header--xs…sf-header--xlutility classes for standardized block padding.sf-list-none,sf-marker--action/primary/secondary/tertiary(colored::markerstyling), plussf-selection--alt.sf-stickyandsf-sticky--s/m/lfor size-based sticky positioning.Documentation