fix(solid-router): allow client-side-routing by link in SVG#5667
fix(solid-router): allow client-side-routing by link in SVG#5667
Conversation
WalkthroughThe PR adds SVG anchor element support to the solid-router Link component by introducing conditional SVG rendering when Changes
Sequence DiagramsequenceDiagram
participant User
participant SVGLink
participant LinkComponent
participant Router
User->>SVGLink: Click SVG link
SVGLink->>LinkComponent: Click event (currentTarget = SVGAElement)
rect rgba(200, 220, 255, 0.3)
note right of LinkComponent: SVG-specific handling
LinkComponent->>LinkComponent: getAttribute('target')<br/>instead of .target property
LinkComponent->>LinkComponent: _asChild === 'svg'?<br/>Render SVG wrapper path
end
LinkComponent->>Router: Navigate to /posts<br/>(client-side)
Router->>User: Update page (no full reload)
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes
Possibly related PRs
Suggested reviewers
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (3)
🧰 Additional context used📓 Path-based instructions (3)**/*.{ts,tsx}📄 CodeRabbit inference engine (AGENTS.md)
Files:
packages/{react-router,solid-router}/**📄 CodeRabbit inference engine (AGENTS.md)
Files:
e2e/**📄 CodeRabbit inference engine (AGENTS.md)
Files:
🧠 Learnings (4)📓 Common learnings📚 Learning: 2025-09-23T17:36:12.598ZApplied to files:
📚 Learning: 2025-10-01T18:30:26.591ZApplied to files:
📚 Learning: 2025-10-08T08:11:47.088ZApplied to files:
🧬 Code graph analysis (1)e2e/solid-router/basic/src/main.tsx (1)
🔇 Additional comments (7)
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 199e68b
☁️ Nx Cloud last updated this comment at |
More templates
@tanstack/arktype-adapter
@tanstack/directive-functions-plugin
@tanstack/eslint-plugin-router
@tanstack/history
@tanstack/nitro-v2-vite-plugin
@tanstack/react-router
@tanstack/react-router-devtools
@tanstack/react-router-ssr-query
@tanstack/react-start
@tanstack/react-start-client
@tanstack/react-start-server
@tanstack/router-cli
@tanstack/router-core
@tanstack/router-devtools
@tanstack/router-devtools-core
@tanstack/router-generator
@tanstack/router-plugin
@tanstack/router-ssr-query-core
@tanstack/router-utils
@tanstack/router-vite-plugin
@tanstack/server-functions-plugin
@tanstack/solid-router
@tanstack/solid-router-devtools
@tanstack/solid-router-ssr-query
@tanstack/solid-start
@tanstack/solid-start-client
@tanstack/solid-start-server
@tanstack/start-client-core
@tanstack/start-plugin-core
@tanstack/start-server-core
@tanstack/start-static-server-functions
@tanstack/start-storage-context
@tanstack/valibot-adapter
@tanstack/virtual-file-routes
@tanstack/zod-adapter
commit: |
…TanStack#5667) * add test * fix svg links in solid router --------- Co-authored-by: Brenley Dueck <brenleydueck@gmail.com>
…TanStack#5667) * add test * fix svg links in solid router --------- Co-authored-by: Brenley Dueck <brenleydueck@gmail.com>
This, but for solid
Closes #5632
Summary by CodeRabbit
New Features
Tests