Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'master' of https://github.com/signumsoftware/framework
# Conflicts: # Signum.React/Scripts/Lines/EntityLine.tsx
- Loading branch information
8836f7d
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.
Pinned Filters
This merge includes in master branch a feature that will be the delight of your users: Pinned filters.
What Pinned filters try to accomplish is to give a simpler and more guided alternative to Search Control filters. Instead of select the token, operation and value, and then pressing search, an end-used can just select the value from a predefined filter and the results change automatically.
The way they work is, on the SearchControl FilterBuilder there is a new start icon, just press it and some optional settings will appear.
Then, if you click in the Filter Icon to hide the filters, you'll see that the pinned filter value is still there:
For now, the following options are available:
Pinned filters are then a cheap (no-code) alternative to
SimpleFilterBuilders
, that can be created by and end-user without developer interaction. They do not require a click in the Search button, a request will be made on every value change. Pinned filters are fully integrated in the framework, they are encoded in the URL, and stored in UserQueries.Default Filters
Pinned filters are so useful, that now the framework has a concept of
defaultFilters
inQuerySettings
, similar to thedefaultOrderColumn
. This means every single query will have by default filters hidden and a auto-complete-like search box that is able to select by the entityToString
.Searching in Multiple Columns
Once you have a search-by-toString in every search control, the next step is clear: searching in multiple columns.
The way it works is by creating an
OR
Group with the desired columns and operationContains
, and instead of pinning each filter, you pin the group itself. Then the internal values get disabled and a new value appears in the group itsef!.Just click in filters to hide them and... tada!
Here is an example of using
defaultFilters
, multiple columns andQueryTokenString<T>
together:Pinned Filters in Charting and Dashboard
Pinned filters are also available in Charting, and User Charts. They are very useful to create interactive Charts in the Dashboard, where the user can change some of the filters:
This feature plays with Animated Charts like peanut butter and jelly 🥜 🍞 🍓
Of course, if you have a UserQuery with pinned filters, they will appear in the dashboard as well:
How to update
Just take the latest version, add this line if using predictor and sync (just [Enter] everywhere).
Enjoy the Xmas 🎅
8836f7d
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.
Excellent!
Happy new year. 👏
8836f7d
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.
Very nice 👍🏼👍🏼👍🏼