daviddallakyan2005 opened a new pull request, #43223:
URL: https://github.com/apache/superset/pull/43223

   ### SUMMARY
   
   This is the registry-only slice @rusackas asked for on #40905. The original 
implementation is @ashah65's — I am landing just the part that was already 
called clean, as a new PR rather than pushing over that branch.
   
   Dashboard cascade used to consult a hardcoded `ALLOW_DEPENDENCIES` list 
(`filter_select` / `filter_range` / `filter_time`). Third-party native filters 
could not join cascade without a core change. This replaces that list with 
`ChartMetadata.supportsCascadeDependencies`:
   
   - Select, Range, and Time filters set the flag to `true`. Parent picker and 
child "Values are dependent on other filters" stay as they are today.
   - Time column and Time grain set it to `false`. They stay out of **both** 
gates — I did not take the #40905 child-side widening that would have shown the 
dependency section on those types.
   - If a plugin leaves the flag unset, we fall back to `Behavior.NativeFilter` 
so existing third-party filters keep working.
   
   `isColumnSelect`, the divider change-tracking rewrite, and the ControlLabel 
work from #40905 are not in this PR. Those can come later if still wanted.
   
   I do not think this needs a SIP. It is the same cascade feature, driven from 
plugin metadata instead of a list, and rusackas already said the core swap is 
clean.
   
   Related: #40905, discussion #26084.
   
   ### BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
   
   Not applicable. Core filter UI is unchanged. Time column / time grain still 
do not offer the child dependency control.
   
   ### TESTING INSTRUCTIONS
   
   ```
   cd superset-frontend && npm run test -- 
--testPathPatterns='FiltersConfigModal|useFilterOperations|getControlItemsMap|ChartMetadata.test'
   ```
   
   On a dashboard:
   
   1. Open **Manage filters**.
   2. Add a Value (select) filter and a Range filter. Confirm "Values are 
dependent on other filters" still appears for those types, and that each can be 
chosen as a parent of the other.
   3. Add a Time column or Time grain filter. Confirm they do **not** show that 
child control and cannot be selected as a cascade parent.
   4. Save and confirm existing select/range/time cascade still applies on the 
dashboard.
   
   ### ADDITIONAL INFORMATION
   
   - [ ] Has associated issue:
   - [ ] Required feature flags:
   - [ ] Changes UI
   - [ ] Includes DB Migration (follow approval process in 
[SIP-59](https://github.com/apache/superset/issues/13351))
     - [ ] Migration is atomic, supports rollback & is backwards-compatible
     - [ ] Confirm DB migration upgrade and downgrade tested
     - [ ] Runtime estimates and downtime expectations provided
   - [ ] Introduces new feature or API
   - [ ] Removes existing feature or API
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to