go back to the old schematic#633
Conversation
WalkthroughThe PR reorganizes the Explorer component's layout by extracting Changes
Possibly related PRs
✨ 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 |
There was a problem hiding this comment.
Actionable comments posted: 1
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: ab0bd780-bbf5-48f8-9042-16702893ffe2
📒 Files selected for processing (6)
src/components/Explorer/DataSelector.jssrc/components/Explorer/Explorer.jssrc/components/Explorer/NephronSchemaCard.jssrc/components/Explorer/Search.jssrc/index.scsssrc/initialState.json
💤 Files with no reviewable changes (1)
- src/index.scss
| <article> | ||
| <WelcomeText /> | ||
| <DataSelectorContainer /> | ||
| <Search /> |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Verify where featureNewCellClusterDate is sourced and whether it's wired to Explorer/Search.
rg -n -C3 '\bfeatureNewCellClusterDate\b' src/components src/actions src/reducers
rg -n -C3 '<Search' src/components/Explorer/Explorer.js src/components/Explorer/Search.jsRepository: KPMP/pegasus-web
Length of output: 1323
🏁 Script executed:
cat -n src/components/Explorer/Explorer.js | head -50Repository: KPMP/pegasus-web
Length of output: 2254
🏁 Script executed:
cat -n src/components/Explorer/Search.js | head -30Repository: KPMP/pegasus-web
Length of output: 1159
🏁 Script executed:
rg -n "featureNewCellClusterDate" --type js -A 5 -B 5 | head -100Repository: KPMP/pegasus-web
Length of output: 1024
🏁 Script executed:
rg -n "export.*Explorer|class Explorer|function Explorer" src/components/Explorer/Repository: KPMP/pegasus-web
Length of output: 231
🏁 Script executed:
rg -n "connect\(|Redux\|Provider\|useSelector" src/components/Explorer/Repository: KPMP/pegasus-web
Length of output: 443
🏁 Script executed:
rg -n "featureNewCellClusterDate" src/reducers --type js | head -20Repository: KPMP/pegasus-web
Length of output: 112
🏁 Script executed:
rg -n "featureNewCellClusterDate" src/ --type js | grep -E "(state|reducer|initialState)" | head -20Repository: KPMP/pegasus-web
Length of output: 42
🏁 Script executed:
# Check if any parent component passes featureNewCellClusterDate to Explorer
rg -n "Explorer" src/components --type js -A 3 -B 3 | grep -A 5 -B 5 "featureNewCellClusterDate"Repository: KPMP/pegasus-web
Length of output: 42
🏁 Script executed:
# Find all mentions of featureNewCellClusterDate in the entire codebase
rg -n "featureNewCellClusterDate" --type jsRepository: KPMP/pegasus-web
Length of output: 266
🏁 Script executed:
# Check structure of src directory
find src -type d -maxdepth 2 | head -20Repository: KPMP/pegasus-web
Length of output: 476
🏁 Script executed:
# Look at the reducer/state structure
fd ".*[Rr]educ" src --type f | head -10Repository: KPMP/pegasus-web
Length of output: 337
🏁 Script executed:
# Check the main reducers file
cat -n src/reducers.jsRepository: KPMP/pegasus-web
Length of output: 1042
🏁 Script executed:
# Check the featureSwitchReducer since featureNewCellClusterDate looks like a feature flag
cat -n src/components/FeatureSwitch/featureSwitchReducer.jsRepository: KPMP/pegasus-web
Length of output: 476
🏁 Script executed:
# Check initialState
find src -name "*initialState*" -o -name "*initial*" | head -10Repository: KPMP/pegasus-web
Length of output: 81
🏁 Script executed:
cat src/initialState.jsonRepository: KPMP/pegasus-web
Length of output: 253
🏁 Script executed:
# Check who imports/uses the Explorer component
rg -n "import.*Explorer|<Explorer" src/ --type js -B 2 -A 2Repository: KPMP/pegasus-web
Length of output: 375
🏁 Script executed:
# Check the main App component to see the full component tree
fd -e js "app\.js|App\.js|index\.js" src --type f | xargs cat -n | head -100Repository: KPMP/pegasus-web
Length of output: 5276
🏁 Script executed:
# Check if ConceptSelectFullWidth actually uses featureNewCellClusterDate
cat -n src/components/ConceptSelect/ConceptSelectFullWidth.js | head -50Repository: KPMP/pegasus-web
Length of output: 918
🏁 Script executed:
# Search for featureNewCellClusterDate in ConceptSelectFullWidth
rg -n "featureNewCellClusterDate" src/components/ConceptSelect/ --type js -B 3 -A 3Repository: KPMP/pegasus-web
Length of output: 42
🏁 Script executed:
# Check the git history to see if featureNewCellClusterDate was recently removed from Redux
git log --oneline --all -20 -- src/reducers.js src/initialState.json 2>/dev/null || echo "No git history available"Repository: KPMP/pegasus-web
Length of output: 1164
🏁 Script executed:
# Check if featureNewCellClusterDate is actually used in ConceptSelectContainer
rg -n "featureNewCellClusterDate" src/components/ConceptSelect/ --type jsRepository: KPMP/pegasus-web
Length of output: 42
🏁 Script executed:
# Check ConceptSelectContainer for this prop usage
cat -n src/components/ConceptSelect/ConceptSelectContainer.js | head -80Repository: KPMP/pegasus-web
Length of output: 1308
featureNewCellClusterDate prop is undefined in Search component.
At Line 26, Search is rendered without props, but Search forwards this.props.featureNewCellClusterDate to ConceptSelectFullWidth (in src/components/Explorer/Search.js, Line 14). This prop doesn't exist in Redux state and is not passed from any parent, so it will be undefined at runtime.
The proposed fix to pass the prop from Explorer is incomplete—Explorer itself doesn't have access to featureNewCellClusterDate (it uses connect(null, mapDispatchToProps) with no Redux state mapping). For a complete fix, featureNewCellClusterDate must first be added to Redux state and mapped to Explorer, then passed to Search.
Proposed interim fix
- <Search />
+ <Search featureNewCellClusterDate={this.props.featureNewCellClusterDate} />Note: This requires featureNewCellClusterDate to be added to Redux state first.
Summary by CodeRabbit
New Features
Style
Chores