-
Notifications
You must be signed in to change notification settings - Fork 14.4k
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
feat(dashboards): Filter status indicators #10936
Conversation
Having both dropdown and teeth indicator at the same time? is it a little confusing and duplicated? |
yes, the teeth will be gone~ |
d7e926e
to
45354fc
Compare
This comment has been minimized.
This comment has been minimized.
Codecov Report
@@ Coverage Diff @@
## master #10936 +/- ##
==========================================
- Coverage 66.05% 60.75% -5.31%
==========================================
Files 816 383 -433
Lines 38589 24195 -14394
Branches 3650 0 -3650
==========================================
- Hits 25491 14700 -10791
+ Misses 12996 9495 -3501
+ Partials 102 0 -102
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report at Codecov.
|
A personal opinion: I really liked the colour part of the filters that allowed to view in a glimpse what filter was where. |
Thanks for the comment, Cory!
As we are slowly moving towards our new design, proposed in SIP34,
https://projects.invisionapp.com/share/BNVBOEJRWQ2#/screens/398392315
we try to create better consistency and cleanness across the product.
During our research, we noticed that when there are too many charts and
filters in a dashboard, the colorful indicators on the side become visually
overwhelming, and the indicators take up lots of space in the dashboard.
we went through multiple phases of research and design exploration to come
up with the new solution. Going forward, our design process will be more
transparent and we will present the finding community wise. @mihir Chahuan
<mihir@preset.io> please chime in if you have additional comments.
[image: Screen Shot 2020-09-22 at 2.07.45 PM.png]
[image: Screen Shot 2020-09-22 at 2.07.55 PM.png]
[image: Screen Shot 2020-09-22 at 2.08.18 PM.png]
[image: Screen Shot 2020-09-22 at 2.08.25 PM.png]
[image: Screen Shot 2020-09-22 at 2.08.31 PM.png]
…On Tue, Sep 22, 2020 at 12:44 PM CoryChaplin ***@***.***> wrote:
A personal opinion: I really liked the color part of the filters that
allowed to view in a glimpse what filter was where.
The number and details of the filters is interesting too, but don't we
loose a part of the info (and the nice colours in the filter box)?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#10936 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AQFR5U7VP5EELBSPJYAYCULSHD5DRANCNFSM4RQU4IOA>
.
|
Thanks for the feedback @junlinc , I get your point. Goodbye colours :) |
Once we implement the new dashboard native filter with a filter bar as a
whole, this indicator new design will probably make more sense!
…On Wed, Sep 23, 2020 at 9:58 AM CoryChaplin ***@***.***> wrote:
Thanks for the feedback @junlinc <https://github.com/JunlinC> , I get
your point. Goodbye colours :)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#10936 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AQFR5U4Q7PPCSR3ROFOYUMTSHISK3ANCNFSM4RQU4IOA>
.
|
superset-frontend/src/dashboard/components/FiltersBadge/DetailsPanel.tsx
Show resolved
Hide resolved
The chart in the screenshot is only showing "No Results" because there genuinely are no results for that query. That is not because of the filters being unapplicable. |
superset-frontend/src/dashboard/components/FiltersBadge/DetailsPanel.tsx
Outdated
Show resolved
Hide resolved
type Datasource = { | ||
time_grain_sqla?: [string, string][]; | ||
granularity?: [string, string][]; | ||
}; |
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.
can probably replace with import { DatasourceMeta } from '@superset-ui/chart-controls'
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.
Nice, thanks
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.
that type doesn't include granularity
. It probably should, right?
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.
Also, the type for time_grain_sqla
appears to be incomplete. It's string
and should be [string, string][]
(or maybe the union of those?)
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.
Hmm, @superset-ui/chart-controls@v15.0.3
(which is in the master
branch) should have made time_grain_sqla
[string, string][]
: https://github.com/apache-superset/superset-ui/blob/0f11940d8201feea3c5f5adee82aef68a9d201f3/packages/superset-ui-chart-controls/src/types.ts#L72
I believe it is only [string, string][]
for Datasource
.
As for granularity
, feel free to add it in superset-ui/chart-controls
if it's not too much hassle for you.
There is also import { Datasource } from '@superset/core'
, which is missing both properties. We should probably consolidate these two instead of adding yet another new type.
superset-frontend/src/dashboard/components/FiltersBadge/index.tsx
Outdated
Show resolved
Hide resolved
superset-frontend/src/dashboard/components/FiltersBadge/index.tsx
Outdated
Show resolved
Hide resolved
I want to raise a usability concern about the new design @junlincc
After: BEFORE: |
….tsx Co-authored-by: Evan Rusackas <evan@preset.io>
….tsx Co-authored-by: Evan Rusackas <evan@preset.io>
….tsx Co-authored-by: Evan Rusackas <evan@preset.io>
….tsx Co-authored-by: Evan Rusackas <evan@preset.io>
…set into feature/filter-p0
….tsx Co-authored-by: Evan Rusackas <evan@preset.io>
….tsx Co-authored-by: Evan Rusackas <evan@preset.io>
…set into feature/filter-p0
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.
Left some nits, mostly about Theme variables, but I'll give this the green light and let you clean that up before merging as we discussed.
* Initial commit of new filters badge. * refactor applied/rejected filters code * finished filter indicators * filter badge tested * unnecessary imports * formatting and types * fixes * license * code quality tweaks * state management for showing focused filter scope * clean up filter key extraction code * remove unnecessary styles * temp css to demonstrate highlighting * fix focused filter logic * no more color badges * new toys for highlighting dash components (apache#11144) * tweak style for the filter chart when filter is focused * style: Filters p0 css2 (apache#11151) * nixing background tweak * src paths * another quick theme color * src paths, adjusting pill icon color, changing icons, showing applied/busted counts * linting stuff * fixing and tweaking tests * show filter indicator when filters are not active * chart title bar cleanup * open the right panel when popover opens * unused import * fix EditableTitle tests * margin on dashboard header * show the chart dropdown menu * fix blur filter breaking dropdowns * style tweak - no pointer events when irrelevant charts are blurred * fix box shadow on filter highlight * it's an array * attempt fixing e2e * style: filters p0 icon churn (apache#11215) * new filters icon * icon styling * bigger icons in list views * better sizing of table actions and favStars * more icon sizing... * fixing more button size jankiness * linting * Filters performance (apache#11255) * fixing time filter "ok" button * making unset filter menu collapsible * sort alphabetically * fix highlighting when removing items * try a flex layout (for browser render perf) * more specific transitioning * temp: comment out some code as a test * temp: comment out more code * temp: remove possibly expensive computations from ChartHolder * Revert "temp: comment out some code as a test" This reverts commit 309b880. * Revert "temp: comment out more code" This reverts commit 64c88b2. * Revert "temp: remove possibly expensive computations from ChartHolder" This reverts commit 37ce021. * experiment: upgrade react-select to v3 * Revert "experiment: upgrade react-select to v3" This reverts commit c3972ba. * fix the damn problem * remove code used for testing purposes * awful hack to avoid adding a class to a container * approaching infinity... and not beyond! * fix ref forwarding * add theme to tests as necessary * fix(extra-filters): add logic for identifying applied extra filters (apache#11325) * fix: use dashboard id for stable cache key (apache#11293) * fix: button translations missing (apache#11187) * button translations missing * blank space before text * feat: update time_compare description and choices (apache#11294) * feat: update time_compare description and choices * Update sections.jsx * fix(extra-filters): add logic for identifying applied extra filters * lint Co-authored-by: Jesse Yang <jesse.yang@airbnb.com> Co-authored-by: rubenSastre <ruben.sastre@decathlon.com> Co-authored-by: Erik Ritter <erik.ritter@airbnb.com> * address design feedback * slight tweak to panel logic, keep panels open that user has opened * rearrange code to be more graceful * fix: bump superset-ui/core (apache#11385) * use is_dttm instead of is_temporal * types, names * only show unset filter panel if there are unset filters * fix highlighting the filter control * fix filterbox layout * translations * fix cypress * actually add the test attribute * Update superset-frontend/src/dashboard/components/DashboardBuilder.jsx Co-authored-by: Evan Rusackas <evan@preset.io> * Update superset-frontend/src/dashboard/components/DashboardBuilder.jsx Co-authored-by: Evan Rusackas <evan@preset.io> * formatting * add link comment to hack * Update superset-frontend/src/dashboard/components/gridComponents/ChartHolder.jsx Co-authored-by: Evan Rusackas <evan@preset.io> * stop importing lodash * Update superset-frontend/src/dashboard/components/gridComponents/ChartHolder.jsx Co-authored-by: Evan Rusackas <evan@preset.io> * Update superset-frontend/src/dashboard/components/FiltersBadge/Styles.tsx Co-authored-by: Evan Rusackas <evan@preset.io> * Update superset-frontend/src/dashboard/components/FiltersBadge/Styles.tsx Co-authored-by: Evan Rusackas <evan@preset.io> * Update superset-frontend/src/dashboard/components/FiltersBadge/Styles.tsx Co-authored-by: Evan Rusackas <evan@preset.io> * Update superset-frontend/src/dashboard/components/FiltersBadge/Styles.tsx Co-authored-by: Evan Rusackas <evan@preset.io> * skip broken test * Update superset-frontend/src/dashboard/components/FiltersBadge/Styles.tsx Co-authored-by: Evan Rusackas <evan@preset.io> * Update superset-frontend/src/dashboard/components/FiltersBadge/Styles.tsx Co-authored-by: Evan Rusackas <evan@preset.io> * adjust colors of titles * linting * no indicators when chart is loading * support all time fields * fix lock file Co-authored-by: Natalie Ruhe <natalie@preset.io> Co-authored-by: Evan Rusackas <evan@preset.io> Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com> Co-authored-by: Jesse Yang <jesse.yang@airbnb.com> Co-authored-by: rubenSastre <ruben.sastre@decathlon.com> Co-authored-by: Erik Ritter <erik.ritter@airbnb.com> Co-authored-by: Ville Brofeldt <ville.v.brofeldt@gmail.com>
SUMMARY
This adds a new filter indicator which is intended to take the place of the "teeth" style indicators. This indicator is lower profile, and less confusing. If a filter is ineligible for a given chart, that is now displayed on the indicator.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
On the left, a chart with 2 filters applied. On the right, a chart with a filter that could not be applied.
TEST PLAN
ADDITIONAL INFORMATION