The monday.get('filter')
API is not quite complete and symmetric when comparing board view vs dashboard widget vs GraphQL API.
1. Board view vs. dashboard widget
As discussed in this topic, it’s currently possible to access the board-wide filter from a board view by using monday.get('filter')
, but the same is not possible for a dashboard widget. It would be good to support this for feature symmetry. We’d be able to offer the same experience/feature parity for our board view as for our dashboard widget view.
It would be great if the filter would also be (mostly) compatible with item_page(query_params)
just like the board view’s filters.
2. monday.get('filter')
vs items_page
API incompatibility
monday.get('filter')
returns:
{
term: string;
rules: (Record<string, any> & {
column_id?: string;
compare_value?: string[];
compare_attribute?: string;
operator?: string;
})[];
operator: string | null;
}
boards { items_page(query_params) } }
accepts:
operator ItemsQueryOperator
order_by [ItemsQueryOrderBy!]
rules [ItemsQueryRule!]
The string term
is not accepted. Additionally, the operator
and compare_value
are type string
vs a string enum like ItemsQueryOperator
.
I’d love to be able to apply the filters from our back end.
3. Person filter is missing
The search term and filters are included in monday.get('filter')
's FilterResponse
, but the person is not visible at all to the board view an dashboard widget view.
This means I cannot apply the complete filter from our back end, and, worse, I cannot even detect that a customer has this filter enabled. The latter means they have an expectation that the view is filtered correctly, but it might not be.