Conversation
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
📝 WalkthroughWalkthroughReplace the central Router __store with a granular, server-aware RouterStores system; RouterCore now accepts a store factory; public RouterState drops pendingMatches/cachedMatches; adapters, devtools, plugins, and tests updated to use per-store subscriptions and adapter-specific store factories. Changes
Sequence Diagram(s)sequenceDiagram
participant Client as Client App
participant StoreFactory as Store Factory (getStoreFactory)
participant ReactiveStores as RouterStores (per-adapter)
participant MatchComp as Match component
Client->>StoreFactory: initialize Router (isServer: false)
StoreFactory->>ReactiveStores: create reactive stores + batch + init
ReactiveStores-->>StoreFactory: return stores
Client->>MatchComp: render Match
MatchComp->>ReactiveStores: subscribe to per-match store (useStore/useStore-like)
ReactiveStores-->>MatchComp: push per-match updates
MatchComp-->>Client: re-render UI
sequenceDiagram
participant Server as SSR
participant StoreFactory as Store Factory (getStoreFactory)
participant SSRStores as Non-reactive RouterStores
participant MatchComp as Match component
Server->>StoreFactory: initialize Router (isServer: true)
StoreFactory->>SSRStores: create non-reactive stores (snapshots)
SSRStores-->>StoreFactory: return stores
Server->>MatchComp: render Match (read-only)
MatchComp->>SSRStores: read store.state directly
SSRStores-->>MatchComp: return snapshot
MatchComp-->>Server: produce HTML
Estimated code review effort🎯 5 (Critical) | ⏱️ ~120 minutes Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 1 | ❌ 2❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (1 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches
🧪 Generate unit tests (beta)
Comment |
|
View your CI Pipeline Execution ↗ for commit 1e703e6
☁️ Nx Cloud last updated this comment at |
…o comparison methods (#6861)
… like solid & react (#6887)
|
I'm OK with the changes to the solid/vue packages made here. |
Benchmarks
Custom benchmarks (separate from the codspeed ones), made to exaggerate the impact of this PR:
total_cycle_msis a Router test, runs onplaywright, measures "how long to navigate 100 times" on a rerender-heavy pagemedian_req_per_secis a Start test, runs onautocannon, using the previously established "minimal", "100 links", "many nested routes" appsResults:
Summary by CodeRabbit
New Features
Bug Fixes
Documentation
Refactor