Skip to content

Commit 9f9be88

Browse files
committed
Fix clearing insights filters
1 parent 44fd283 commit 9f9be88

File tree

1 file changed

+17
-19
lines changed

1 file changed

+17
-19
lines changed

ui/insight/src/filters.ts

+17-19
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,31 @@
1-
import { h, VNode } from 'snabbdom';
1+
import { h } from 'snabbdom';
22
import Ctrl from './ctrl';
33
import { Dimension } from './interfaces';
44

55
function select(ctrl: Ctrl) {
66
return function (dimension: Dimension) {
77
if (dimension.key === 'date') return;
88
const single = dimension.key === 'period';
9-
function multipleSelect(vnode: VNode) {
10-
$(vnode.elm).multipleSelect({
11-
placeholder: dimension.name,
12-
width: '100%',
13-
selectAll: false,
14-
filter: dimension.key === 'opening',
15-
single: single,
16-
minimumCountSelected: 10,
17-
onClick: function (view) {
18-
const values = single ? [view.value] : $(vnode.elm).multipleSelect('getSelects');
19-
ctrl.setFilter(dimension.key, values);
20-
},
21-
});
22-
}
239
return h(
2410
'select',
2511
{
2612
attrs: { multiple: true },
2713
hook: {
28-
insert: multipleSelect,
29-
update: (_oldVnode, vnode) => {
30-
if (!ctrl.vm.filters[dimension.key]) multipleSelect(vnode);
14+
insert: vnode =>
15+
$(vnode.elm).multipleSelect({
16+
placeholder: dimension.name,
17+
width: '100%',
18+
selectAll: false,
19+
filter: dimension.key === 'opening',
20+
single: single,
21+
minimumCountSelected: 10,
22+
onClick: function (view) {
23+
const values = single ? [view.value] : $(vnode.elm).multipleSelect('getSelects');
24+
ctrl.setFilter(dimension.key, values);
25+
},
26+
}),
27+
postpatch: (_oldVnode, vnode) => {
28+
if (Object.keys(ctrl.vm.filters).length === 0) $(vnode.elm).multipleSelect('uncheckAll');
3129
},
3230
},
3331
},
@@ -38,7 +36,7 @@ function select(ctrl: Ctrl) {
3836
{
3937
attrs: {
4038
value: value.key,
41-
selected: selected && selected.includes(value.key),
39+
selected: !!selected && selected.includes(value.key),
4240
},
4341
},
4442
value.name

0 commit comments

Comments
 (0)