-
Notifications
You must be signed in to change notification settings - Fork 14.9k
feat(filter): Add Slider Range Inputs Option for Numerical Range Filters #33170
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
Based on your review schedule, I'll hold off on reviewing this PR until it's marked as ready for review. If you'd like me to take a look now, comment
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Review by Korbit AI
Korbit automatically attempts to detect when you fix issues in new commits.
Category | Issue | Status |
---|---|---|
Redundant Data Structure ▹ view | ✅ Fix detected | |
Complex Validation Logic ▹ view | ✅ Fix detected | |
Unreliable Modal Save Logic ▹ view | ✅ Fix detected | |
Silent failure in input handler ▹ view | ✅ Fix detected | |
Replace sequential waits with clear state expectations ▹ view | ✅ Fix detected |
Files scanned
File Path | Reviewed |
---|---|
superset-frontend/src/filters/components/common.ts | ✅ |
superset-frontend/src/filters/components/Range/types.ts | ✅ |
superset-frontend/src/dashboard/components/nativeFilters/utils.ts | ✅ |
superset-frontend/cypress-base/cypress/e2e/dashboard/utils.ts | ✅ |
superset-frontend/src/filters/components/Range/RangeFilterPlugin.tsx | ✅ |
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FiltersConfigForm.tsx | ✅ |
Explore our documentation to understand the languages and file types we support and the files we ignore.
Check out our docs on how you can make Korbit work best for you and your team.
superset-frontend/src/dashboard/components/nativeFilters/utils.ts
Outdated
Show resolved
Hide resolved
...ashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FiltersConfigForm.tsx
Outdated
Show resolved
Hide resolved
superset-frontend/src/filters/components/Range/RangeFilterPlugin.tsx
Outdated
Show resolved
Hide resolved
@geido Processing your ephemeral environment request here. Action: up. More information on how to use or configure ephemeral environments |
@geido Ephemeral environment spinning up at http://54.213.24.145:8080. Credentials are 'admin'/'admin'. Please allow several minutes for bootstrapping and startup. |
const HorizontalLayout = styled.div` | ||
display: flex; | ||
flex-direction: column; | ||
gap: ${({ theme }) => theme.gridUnit * 4}px; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit can we import theme at the top and then just reference it? Example
const SomeStyledThing = styled.div`
${({ theme }) => `
padding: ${theme.gridUnit * 2}px;
border-radius: ${theme.borderRadius}px;
border: 1px solid ${theme.colors.secondary.light3};
`}
`;
Just a typo. There is a semicolon in the text. There is a more serious bug that looks weird. When changing the type of filter, for example going from Slider + Inputs to just Slider and then applying the filter on the Dashboard, the charts affected by the filter won't show the filter applied as they normally do. Updating the input with both up/down arrows or manually does not reflect on the slider I have selected the option "Single value" in the filter settings and the UI breaks. Also, it seems that the inputs are not respecting the single value any longer and are still showing both min and max inputs instead of just one as expected. It looks like there are still relevant issues in the PR so I am not pausing testing here to give you a chance to fix the major problems first. Thank you |
SUMMARY
This PR reintroduces the slider as an additional method for configuring numerical range filters, based on community feedback following its removal in #31726.
The main improvements include:
Horizontal mode: Slider rendered first, then inputs inline.
Vertical mode: Metadata and error states positioned appropriately.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF


TESTING INSTRUCTIONS
Open a dashboard and add or edit a numerical range filter.
In filter settings, configure:
In vertical orientation:
In horizontal orientation:
Test synchronization:
ADDITIONAL INFORMATION
Has associated issue: #33150