Skip to content

Commit b486bf7

Browse files
committed
(CISC-2409) Quick filter with no options
1 parent 6023820 commit b486bf7

File tree

3 files changed

+38
-2
lines changed

3 files changed

+38
-2
lines changed

packages/data-grid/src/quickFilter/QuickFilter.jsx

+18-1
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,28 @@ const propTypes = {
3030
};
3131

3232
function QuickFilter({ filters, onFilterSelect }) {
33+
/** Used for the options array when there is no items to filter by */
34+
const emptyFilterOption = [
35+
{
36+
label: 'No items to filter by',
37+
disabled: true,
38+
},
39+
];
40+
3341
return (
3442
<div className="dg-quick-filter-container">
3543
<div className="dg-quick-filter-filters">
3644
{filters.map((filter, idx) => {
37-
return (
45+
return !filter.options ? (
46+
<ButtonSelect
47+
className="dg-quick-filter-empty"
48+
id={`quick-filter-${filter.field}-${idx}`}
49+
key={`${idx + 1}`}
50+
type="tertiary"
51+
options={emptyFilterOption}
52+
placeholder={filter.fieldLabel}
53+
/>
54+
) : (
3855
<ButtonSelect
3956
className="dg-quick-filter"
4057
id={`quick-filter-${filter.field}-${idx}`}

packages/data-grid/src/quickFilter/QuickFilter.md

+4
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,10 @@ const filters = [
4949
},
5050
],
5151
},
52+
{
53+
fieldLabel: 'Empty filter',
54+
field: 'Empty-array',
55+
},
5256
];
5357

5458

packages/data-grid/src/quickFilter/QuickFilter.scss

+16-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
@import '@puppet/sass-variables/_index';
2+
13
.dg-quick-filter-container{
24

35
.dg-quick-filter-filters{
@@ -7,6 +9,19 @@
79
padding-right: 8px;
810
padding-bottom: 16px;
911
}
12+
.dg-quick-filter-empty{
13+
padding-right: 8px;
14+
padding-bottom: 16px;
15+
font-style: italic;
16+
17+
.rc-menu-list-item-focused{
18+
cursor: not-allowed;
19+
}
20+
.rc-menu-list-item-disabled {
21+
.rc-menu-list-item-content {
22+
color: $puppet-n700;
23+
}
24+
}
25+
}
1026
}
11-
1227
}

0 commit comments

Comments
 (0)