Add static guide line styles - #148
Conversation
…s locale-independent
A y scale with `side: 'right'` took its tick-label anchor from the physical side alone. That anchor reaches the DOM as SVG `text-anchor`, which resolves against inline base direction, so an RTL container painted the labels leftward into the plot. The margin pass then read those bounds correctly and reserved nothing on the right, widening the plot until it ran under its own labels. Anchor the far side with `end` once the container reads right to left, and mirror the same relation in the text estimator so a host without a DOM measurer resolves the identical layout.
The layout fix costs 73 B raw in shared code, which puts the difference-mark increment 0.02 kB over its ceiling. Gzip falls on most entries.
# Conflicts: # benchmarks/conformance/cases/103-bubble-map/tanstack.ts # benchmarks/conformance/cases/34-pointer-tooltip/tanstack.ts # benchmarks/conformance/cases/83-focus-context-window/view.tsx # benchmarks/conformance/cases/86-streaming-window-preservation/view.tsx # benchmarks/conformance/cases/88-echarts-free-cursor/controls.ts # benchmarks/conformance/cases/91-timeline-playback-scrubber/tanstack.ts # benchmarks/conformance/cases/92-editable-event-range/tanstack.ts
|
Warning Review limit reachedNext included review available in 26 minutes. View limit detailsLimit details: You’ve used all 4 included reviews currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (33)
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (32)
Included review availability: Your plan provides up to 4 included reviews per hour; 1 remains after this review. 📝 WalkthroughWalkthroughCartesian grid and axis lines now accept renderer-neutral stroke styles. Scene layout accounts for stroke extents. Canvas, SVG, export, motion, facet, and type-barrel tests cover the behavior. Bundle budgets and release documentation were updated. ChangesStyled Cartesian guides
Estimated code review effort: 4 (Complex) | ~45 minutes Severity of issue fixed: Medium Sequence Diagram(s)sequenceDiagram
participant ChartOptions
participant SceneBuilder
participant GuideLayout
participant Renderer
ChartOptions->>SceneBuilder: Provide grid and axis.line styles
SceneBuilder->>GuideLayout: Measure guide stroke extents
GuideLayout-->>SceneBuilder: Return resolved margins
SceneBuilder->>Renderer: Render styled guide rules
Merge Risk: ⚪ Minimal · up to Guide styling, layout containment, rendering, exports, facets, motion, and public type exposure are covered without an identified merge-blocking issue. 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 32 functions across 16 files. (16 skipped: 16 unsupported.) ✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 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 |
|
View your CI Pipeline Execution ↗ for commit 00469ba
☁️ Nx Cloud last updated this comment at |
Adds stroke styling for Cartesian grids and axis baselines while preserving existing boolean behavior and grid defaults. Thick strokes participate in automatic margins and stacked-axis spacing. Facet grids remain independent, and shared outer axes remain validated.
The style contract works across SVG, export, Canvas, motion, and React Native. Canvas now skips zero-width and invalid-width strokes consistently.
The reviewed shared bundle increase is roughly 0.5 KiB gzip, depending on the consumer. A minor changeset is included.
Validation: all 19 validation targets passed, including 1,996 tests across 288 files, package and type checks, bundle policy, comparison evidence, and 188 catalog previews. Hosted comparison and stress checks passed.
Closes #131