@carbon/ibm-products 2.0.0-rc.20 → 2.0.0-rc.22

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. package/README.md +17 -0
  2. package/css/index-full-carbon.css +4933 -3007
  3. package/css/index-full-carbon.css.map +1 -1
  4. package/css/index-full-carbon.min.css +6 -4
  5. package/css/index-full-carbon.min.css.map +1 -1
  6. package/css/index-without-carbon-released-only.css +59 -32
  7. package/css/index-without-carbon-released-only.css.map +1 -1
  8. package/css/index-without-carbon-released-only.min.css +3 -3
  9. package/css/index-without-carbon-released-only.min.css.map +1 -1
  10. package/css/index-without-carbon.css +121 -63
  11. package/css/index-without-carbon.css.map +1 -1
  12. package/css/index-without-carbon.min.css +6 -4
  13. package/css/index-without-carbon.min.css.map +1 -1
  14. package/css/index.css +280 -101
  15. package/css/index.css.map +1 -1
  16. package/css/index.min.css +6 -4
  17. package/css/index.min.css.map +1 -1
  18. package/es/components/Card/CardFooter.js +2 -2
  19. package/es/components/Datagrid/Datagrid/DatagridContent.js +2 -2
  20. package/es/components/Datagrid/Datagrid/DatagridRow.js +42 -11
  21. package/es/components/Datagrid/Datagrid/DatagridSelectAll.js +20 -4
  22. package/es/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +18 -2
  23. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +19 -247
  24. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +41 -285
  25. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.js +4 -4
  26. package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/index.js +1 -0
  27. package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +310 -0
  28. package/es/components/Datagrid/Datagrid/addons/Filtering/utils.js +6 -6
  29. package/es/components/Datagrid/useActionsColumn.js +29 -1
  30. package/es/components/Datagrid/useDefaultStringRenderer.js +1 -1
  31. package/es/components/Datagrid/useNestedRows.js +2 -4
  32. package/es/components/Datagrid/useSelectAllToggle.js +18 -2
  33. package/es/components/Datagrid/useSelectRows.js +19 -2
  34. package/es/components/Datagrid/useStickyColumn.js +22 -5
  35. package/es/components/Datagrid/utils/DatagridActions.js +2 -2
  36. package/lib/components/Card/CardFooter.js +2 -2
  37. package/lib/components/Datagrid/Datagrid/DatagridContent.js +2 -2
  38. package/lib/components/Datagrid/Datagrid/DatagridRow.js +42 -11
  39. package/lib/components/Datagrid/Datagrid/DatagridSelectAll.js +27 -3
  40. package/lib/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +17 -1
  41. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +22 -243
  42. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +47 -284
  43. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.js +4 -4
  44. package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/index.js +8 -0
  45. package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +325 -0
  46. package/lib/components/Datagrid/Datagrid/addons/Filtering/utils.js +5 -5
  47. package/lib/components/Datagrid/useActionsColumn.js +30 -1
  48. package/lib/components/Datagrid/useDefaultStringRenderer.js +1 -1
  49. package/lib/components/Datagrid/useNestedRows.js +2 -4
  50. package/lib/components/Datagrid/useSelectAllToggle.js +25 -2
  51. package/lib/components/Datagrid/useSelectRows.js +26 -2
  52. package/lib/components/Datagrid/useStickyColumn.js +22 -4
  53. package/lib/components/Datagrid/utils/DatagridActions.js +2 -2
  54. package/package.json +8 -8
  55. package/scss/components/Datagrid/styles/_datagrid.scss +27 -7
  56. package/scss/components/Datagrid/styles/_useNestedRows.scss +19 -0
  57. package/scss/components/Datagrid/styles/_useSelectAllToggle.scss +12 -8
  58. package/scss/components/Datagrid/styles/_useStickyColumn.scss +3 -3
  59. package/scss/components/OptionsTile/_options-tile.scss +10 -3
@@ -13,8 +13,6 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
13
13
 
14
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
15
 
16
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
17
-
18
16
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
19
17
 
20
18
  var _react = _interopRequireWildcard(require("react"));
@@ -39,20 +37,22 @@ var _icons = require("@carbon/react/icons");
39
37
 
40
38
  var _ActionSet = require("../../../../ActionSet");
41
39
 
42
- var _2 = require(".");
40
+ var _ = require(".");
43
41
 
44
42
  var _hooks = require("./hooks");
45
43
 
46
- var _utils = require("./utils");
47
-
48
44
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
49
45
 
50
46
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
51
47
 
52
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
53
-
54
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
48
+ /**
49
+ * Copyright IBM Corp. 2022, 2023
50
+ *
51
+ * This source code is licensed under the Apache-2.0 license found in the
52
+ * LICENSE file in the root directory of this source tree.
53
+ */
55
54
 
55
+ /* eslint-disable react/jsx-key */
56
56
  var blockClass = "".concat(_settings.pkg.prefix, "--datagrid");
57
57
  var componentClass = "".concat(blockClass, "-filter-panel");
58
58
  var MotionActionSet = (0, _framerMotion.motion)(_ActionSet.ActionSet);
@@ -90,30 +90,31 @@ var FilterPanel = function FilterPanel(_ref) {
90
90
  searchPlaceholder = _ref$searchPlaceholde === void 0 ? 'Find filters' : _ref$searchPlaceholde;
91
91
 
92
92
  /** State */
93
- var _useInitialStateFromF = (0, _hooks.useInitialStateFromFilters)(filterSections, _constants.PANEL),
94
- _useInitialStateFromF2 = (0, _slicedToArray2.default)(_useInitialStateFromF, 2),
95
- filtersState = _useInitialStateFromF2[0],
96
- setFiltersState = _useInitialStateFromF2[1];
97
-
98
- var _useState = (0, _react.useState)([]),
93
+ var _useState = (0, _react.useState)(false),
99
94
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
100
- filtersObjectArray = _useState2[0],
101
- setFiltersObjectArray = _useState2[1];
102
-
103
- var _useState3 = (0, _react.useState)(false),
104
- _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
105
- showDividerLine = _useState4[0],
106
- setShowDividerLine = _useState4[1];
95
+ showDividerLine = _useState2[0],
96
+ setShowDividerLine = _useState2[1];
97
+
98
+ var _useFilters = (0, _hooks.useFilters)({
99
+ updateMethod: updateMethod,
100
+ filters: filterSections,
101
+ setAllFilters: setAllFilters,
102
+ variation: _constants.PANEL
103
+ }),
104
+ filtersState = _useFilters.filtersState,
105
+ prevFiltersObjectArrayRef = _useFilters.prevFiltersObjectArrayRef,
106
+ prevFiltersRef = _useFilters.prevFiltersRef,
107
+ revertToPreviousFilters = _useFilters.revertToPreviousFilters,
108
+ reset = _useFilters.reset,
109
+ renderFilter = _useFilters.renderFilter,
110
+ filtersObjectArray = _useFilters.filtersObjectArray;
107
111
  /** Refs */
108
112
 
109
113
 
110
114
  var filterPanelRef = (0, _react.useRef)();
111
115
  var filterHeadingRef = (0, _react.useRef)();
112
116
  var filterSearchRef = (0, _react.useRef)();
113
- var actionSetRef = (0, _react.useRef)(); // When using batch actions we have to store the filters to then apply them later
114
-
115
- var prevFiltersRef = (0, _react.useRef)(JSON.stringify(filtersState));
116
- var prevFiltersObjectArrayRef = (0, _react.useRef)(JSON.stringify(filtersObjectArray));
117
+ var actionSetRef = (0, _react.useRef)();
117
118
  /** State from hooks */
118
119
 
119
120
  var _useShouldDisableButt = (0, _hooks.useShouldDisableButtons)({
@@ -132,21 +133,14 @@ var FilterPanel = function FilterPanel(_ref) {
132
133
  }, [updateMethod]);
133
134
  /** Context */
134
135
 
135
- var _useContext = (0, _react.useContext)(_2.FilterContext),
136
- leftPanelOpen = _useContext.leftPanelOpen,
137
- setLeftPanelOpen = _useContext.setLeftPanelOpen;
136
+ var _useContext = (0, _react.useContext)(_.FilterContext),
137
+ panelOpen = _useContext.panelOpen,
138
+ setPanelOpen = _useContext.setPanelOpen;
138
139
  /** Methods */
139
140
 
140
141
 
141
142
  var closePanel = function closePanel() {
142
- return setLeftPanelOpen(false);
143
- }; // If the user decides to cancel or click outside the flyout, it reverts back to the filters that were
144
- // there when they opened the flyout
145
-
146
-
147
- var revertToPreviousFilters = function revertToPreviousFilters() {
148
- setFiltersState(JSON.parse(prevFiltersRef.current));
149
- setFiltersObjectArray(JSON.parse(prevFiltersObjectArrayRef.current));
143
+ return setPanelOpen(false);
150
144
  };
151
145
 
152
146
  var cancel = function cancel() {
@@ -157,19 +151,6 @@ var FilterPanel = function FilterPanel(_ref) {
157
151
  }
158
152
  };
159
153
 
160
- var reset = function reset() {
161
- // Get the initial values for the filters
162
- var initialFiltersState = (0, _utils.getInitialStateFromFilters)(filterSections, _constants.PANEL);
163
- var initialFiltersObjectArray = []; // Set the state to the initial values
164
-
165
- setFiltersState(initialFiltersState);
166
- setFiltersObjectArray(initialFiltersObjectArray);
167
- setAllFilters([]); // Update their respective refs so everything is in sync
168
-
169
- prevFiltersRef.current = JSON.stringify(initialFiltersState);
170
- prevFiltersObjectArrayRef.current = JSON.stringify(initialFiltersObjectArray);
171
- };
172
-
173
154
  var apply = function apply() {
174
155
  setAllFilters(filtersObjectArray); // From the user
175
156
 
@@ -181,224 +162,6 @@ var FilterPanel = function FilterPanel(_ref) {
181
162
  prevFiltersObjectArrayRef.current = JSON.stringify(filtersObjectArray);
182
163
  };
183
164
 
184
- var applyFilters = function applyFilters(_ref2) {
185
- var column = _ref2.column,
186
- value = _ref2.value,
187
- type = _ref2.type;
188
-
189
- // If no end date is selected return because we need the end date to do computations
190
- if (type === _constants.DATE && value.length > 0 && !value[1]) {
191
- return;
192
- }
193
-
194
- var filtersObjectArrayCopy = (0, _toConsumableArray2.default)(filtersObjectArray); // // check if the filter already exists in the array
195
-
196
- var filter = filtersObjectArrayCopy.find(function (item) {
197
- return item.id === column;
198
- }); // // if filter exists in array then update the filter's new value
199
-
200
- if (filter) {
201
- filter.value = value;
202
- } else {
203
- filtersObjectArrayCopy.push({
204
- id: column,
205
- value: value,
206
- type: type
207
- });
208
- } // ATTENTION: this is where you would reset or remove individual filters from the filters array
209
-
210
-
211
- if (type === _constants.CHECKBOX) {
212
- /**
213
- When all checkboxes of a group are all unselected the value still exists in the filtersObjectArray
214
- This checks if all the checkboxes are selected = false and removes it from the array
215
- */
216
- var index = filtersObjectArrayCopy.findIndex(function (filter) {
217
- return filter.id === column;
218
- }); // If all the selected state is false remove from array
219
-
220
- var shouldRemoveFromArray = filtersObjectArrayCopy[index].value.every(function (val) {
221
- return val.selected === false;
222
- });
223
-
224
- if (shouldRemoveFromArray) {
225
- filtersObjectArrayCopy.splice(index, 1);
226
- }
227
- } else if (type === _constants.DATE) {
228
- if (value.length === 0) {
229
- /**
230
- Checks to see if the date value is an empty array, if it is that means the user wants
231
- to reset the date filter
232
- */
233
- var _index = filtersObjectArrayCopy.findIndex(function (filter) {
234
- return filter.id === column;
235
- }); // Remove it from the filters array since there is nothing to filter
236
-
237
-
238
- filtersObjectArrayCopy.splice(_index, 1);
239
- }
240
- } else if (type === _constants.DROPDOWN || type === _constants.RADIO) {
241
- if (value === 'Any') {
242
- /**
243
- Checks to see if the selected value is 'Any', that means the user wants
244
- to reset specific filter
245
- */
246
- var _index2 = filtersObjectArrayCopy.findIndex(function (filter) {
247
- return filter.id === column;
248
- }); // Remove it from the filters array
249
-
250
-
251
- filtersObjectArrayCopy.splice(_index2, 1);
252
- }
253
- }
254
-
255
- setFiltersObjectArray(filtersObjectArrayCopy); // // Automatically apply the filters if the updateMethod is instant
256
-
257
- if (updateMethod === _constants.INSTANT) {
258
- setAllFilters(filtersObjectArrayCopy);
259
- }
260
- };
261
- /** Render the individual filter component */
262
-
263
-
264
- var renderFilter = function renderFilter(_ref3) {
265
- var _filtersState$column, _filtersState$column2, _filtersState$column3, _filtersState$column4;
266
-
267
- var type = _ref3.type,
268
- column = _ref3.column,
269
- components = _ref3.props;
270
-
271
- switch (type) {
272
- case _constants.DATE:
273
- return /*#__PURE__*/_react.default.createElement(_react2.Layer, null, /*#__PURE__*/_react.default.createElement(_react2.DatePicker, (0, _extends2.default)({}, components.DatePicker, {
274
- onChange: function onChange(value) {
275
- var _components$DatePicke, _components$DatePicke2;
276
-
277
- setFiltersState(_objectSpread(_objectSpread({}, filtersState), {}, (0, _defineProperty2.default)({}, column, {
278
- value: value,
279
- type: type
280
- })));
281
- applyFilters({
282
- column: column,
283
- value: value,
284
- type: type
285
- });
286
- (_components$DatePicke = (_components$DatePicke2 = components.DatePicker).onChange) === null || _components$DatePicke === void 0 ? void 0 : _components$DatePicke.call(_components$DatePicke2, value);
287
- },
288
- value: filtersState[column].value,
289
- datePickerType: "range"
290
- }), /*#__PURE__*/_react.default.createElement(_react2.DatePickerInput, (0, _extends2.default)({
291
- placeholder: "mm/dd/yyyy",
292
- labelText: "Start date"
293
- }, components.DatePickerInput.start)), /*#__PURE__*/_react.default.createElement(_react2.DatePickerInput, (0, _extends2.default)({
294
- placeholder: "mm/dd/yyyy",
295
- labelText: "End date"
296
- }, components.DatePickerInput.end))));
297
-
298
- case _constants.NUMBER:
299
- return /*#__PURE__*/_react.default.createElement(_react2.Layer, null, /*#__PURE__*/_react.default.createElement(_react2.NumberInput, (0, _extends2.default)({
300
- step: 1,
301
- allowEmpty: true,
302
- hideSteppers: true
303
- }, components.NumberInput, {
304
- onChange: function onChange(event) {
305
- var _components$NumberInp, _components$NumberInp2;
306
-
307
- setFiltersState(_objectSpread(_objectSpread({}, filtersState), {}, (0, _defineProperty2.default)({}, column, {
308
- value: event.target.value,
309
- type: type
310
- })));
311
- applyFilters({
312
- column: column,
313
- value: event.target.value,
314
- type: type
315
- });
316
- (_components$NumberInp = (_components$NumberInp2 = components.NumberInput).onChange) === null || _components$NumberInp === void 0 ? void 0 : _components$NumberInp.call(_components$NumberInp2, event);
317
- },
318
- value: filtersState[column].value
319
- })));
320
-
321
- case _constants.CHECKBOX:
322
- return /*#__PURE__*/_react.default.createElement(_react2.FormGroup, components.FormGroup, filtersState[column].value.map(function (option) {
323
- return /*#__PURE__*/_react.default.createElement(_react2.Checkbox, (0, _extends2.default)({
324
- key: option.labelText
325
- }, option, {
326
- onChange: function onChange(_, _ref4) {
327
- var _option$onChange;
328
-
329
- var isSelected = _ref4.checked;
330
- var checkboxCopy = filtersState[column].value;
331
- var foundCheckbox = checkboxCopy.find(function (checkbox) {
332
- return checkbox.value === option.value;
333
- });
334
- foundCheckbox.selected = isSelected;
335
- setFiltersState(_objectSpread(_objectSpread({}, filtersState), {}, (0, _defineProperty2.default)({}, column, {
336
- value: checkboxCopy,
337
- type: type
338
- })));
339
- applyFilters({
340
- column: column,
341
- value: (0, _toConsumableArray2.default)(filtersState[column].value),
342
- type: type
343
- });
344
- (_option$onChange = option.onChange) === null || _option$onChange === void 0 ? void 0 : _option$onChange.call(option, isSelected);
345
- },
346
- checked: option.selected
347
- }));
348
- }));
349
-
350
- case _constants.RADIO:
351
- return /*#__PURE__*/_react.default.createElement(_react2.FormGroup, components.FormGroup, /*#__PURE__*/_react.default.createElement(_react2.RadioButtonGroup, (0, _extends2.default)({}, components.RadioButtonGroup, {
352
- valueSelected: ((_filtersState$column = filtersState[column]) === null || _filtersState$column === void 0 ? void 0 : _filtersState$column.value) === '' ? 'Any' : (_filtersState$column2 = filtersState[column]) === null || _filtersState$column2 === void 0 ? void 0 : _filtersState$column2.value,
353
- onChange: function onChange(selected) {
354
- var _components$RadioButt, _components$RadioButt2;
355
-
356
- setFiltersState(_objectSpread(_objectSpread({}, filtersState), {}, (0, _defineProperty2.default)({}, column, {
357
- value: selected,
358
- type: type
359
- })));
360
- applyFilters({
361
- column: column,
362
- value: selected,
363
- type: type
364
- });
365
- (_components$RadioButt = (_components$RadioButt2 = components.RadioButtonGroup).onChange) === null || _components$RadioButt === void 0 ? void 0 : _components$RadioButt.call(_components$RadioButt2, selected);
366
- }
367
- }), /*#__PURE__*/_react.default.createElement(_react2.RadioButton, {
368
- id: "any",
369
- labelText: "Any",
370
- value: "Any"
371
- }), components.RadioButton.map(function (radio) {
372
- var _ref5, _radio$id;
373
-
374
- return /*#__PURE__*/_react.default.createElement(_react2.RadioButton, (0, _extends2.default)({
375
- key: (_ref5 = (_radio$id = radio.id) !== null && _radio$id !== void 0 ? _radio$id : radio.labelText) !== null && _ref5 !== void 0 ? _ref5 : radio.value
376
- }, radio));
377
- })));
378
-
379
- case _constants.DROPDOWN:
380
- return /*#__PURE__*/_react.default.createElement(_react2.Layer, null, /*#__PURE__*/_react.default.createElement(_react2.Dropdown, (0, _extends2.default)({}, components.Dropdown, {
381
- selectedItem: ((_filtersState$column3 = filtersState[column]) === null || _filtersState$column3 === void 0 ? void 0 : _filtersState$column3.value) === '' ? 'Any' : (_filtersState$column4 = filtersState[column]) === null || _filtersState$column4 === void 0 ? void 0 : _filtersState$column4.value,
382
- items: ['Any'].concat((0, _toConsumableArray2.default)(components.Dropdown.items)),
383
- onChange: function onChange(_ref6) {
384
- var _components$Dropdown$, _components$Dropdown;
385
-
386
- var selectedItem = _ref6.selectedItem;
387
- setFiltersState(_objectSpread(_objectSpread({}, filtersState), {}, (0, _defineProperty2.default)({}, column, {
388
- value: selectedItem,
389
- type: type
390
- })));
391
- applyFilters({
392
- column: column,
393
- value: selectedItem,
394
- type: type
395
- });
396
- (_components$Dropdown$ = (_components$Dropdown = components.Dropdown).onChange) === null || _components$Dropdown$ === void 0 ? void 0 : _components$Dropdown$.call(_components$Dropdown, selectedItem);
397
- }
398
- })));
399
- }
400
- };
401
-
402
165
  var renderActionSet = function renderActionSet() {
403
166
  return showActionSet && /*#__PURE__*/_react.default.createElement(MotionActionSet, {
404
167
  actions: [{
@@ -431,12 +194,12 @@ var FilterPanel = function FilterPanel(_ref) {
431
194
 
432
195
 
433
196
  (0, _react.useEffect)(function liftOpenStateToParent() {
434
- if (leftPanelOpen) {
435
- onPanelOpen(leftPanelOpen);
197
+ if (panelOpen) {
198
+ onPanelOpen(panelOpen);
436
199
  } else {
437
- onPanelClose(leftPanelOpen);
200
+ onPanelClose(panelOpen);
438
201
  }
439
- }, [leftPanelOpen, onPanelClose, onPanelOpen]);
202
+ }, [panelOpen, onPanelClose, onPanelOpen]);
440
203
  (0, _react.useEffect)(function setPanelMinimumHeight() {
441
204
  var _filterPanelRef$curre;
442
205
 
@@ -456,9 +219,9 @@ var FilterPanel = function FilterPanel(_ref) {
456
219
 
457
220
  return /*#__PURE__*/_react.default.createElement(_framerMotion.motion.div, {
458
221
  ref: filterPanelRef,
459
- className: (0, _classnames.default)(componentClass, "".concat(componentClass, "__container"), (_cx = {}, (0, _defineProperty2.default)(_cx, "".concat(componentClass, "--open"), leftPanelOpen), (0, _defineProperty2.default)(_cx, "".concat(componentClass, "--batch"), showActionSet), (0, _defineProperty2.default)(_cx, "".concat(componentClass, "--instant"), !showActionSet), _cx)),
222
+ className: (0, _classnames.default)(componentClass, "".concat(componentClass, "__container"), (_cx = {}, (0, _defineProperty2.default)(_cx, "".concat(componentClass, "--open"), panelOpen), (0, _defineProperty2.default)(_cx, "".concat(componentClass, "--batch"), showActionSet), (0, _defineProperty2.default)(_cx, "".concat(componentClass, "--instant"), !showActionSet), _cx)),
460
223
  initial: false,
461
- animate: leftPanelOpen ? 'visible' : 'hidden',
224
+ animate: panelOpen ? 'visible' : 'hidden',
462
225
  variants: _variants.panelVariants
463
226
  }, /*#__PURE__*/_react.default.createElement(_framerMotion.motion.div, {
464
227
  variants: _variants.innerContainerVariants
@@ -492,25 +255,25 @@ var FilterPanel = function FilterPanel(_ref) {
492
255
  height: getScrollableContainerHeight()
493
256
  },
494
257
  onScroll: onInnerContainerScroll
495
- }, filterSections.map(function (_ref7) {
496
- var _ref7$categoryTitle = _ref7.categoryTitle,
497
- categoryTitle = _ref7$categoryTitle === void 0 ? null : _ref7$categoryTitle,
498
- _ref7$filters = _ref7.filters,
499
- filters = _ref7$filters === void 0 ? [] : _ref7$filters,
500
- hasAccordion = _ref7.hasAccordion;
258
+ }, filterSections.map(function (_ref2) {
259
+ var _ref2$categoryTitle = _ref2.categoryTitle,
260
+ categoryTitle = _ref2$categoryTitle === void 0 ? null : _ref2$categoryTitle,
261
+ _ref2$filters = _ref2.filters,
262
+ filters = _ref2$filters === void 0 ? [] : _ref2$filters,
263
+ hasAccordion = _ref2.hasAccordion;
501
264
  return /*#__PURE__*/_react.default.createElement("div", {
502
265
  className: "".concat(componentClass, "__category")
503
266
  }, categoryTitle && /*#__PURE__*/_react.default.createElement("div", {
504
267
  className: "".concat(componentClass, "__category-title")
505
- }, categoryTitle), hasAccordion ? /*#__PURE__*/_react.default.createElement(_react2.Accordion, null, filters.map(function (_ref8) {
506
- var filterLabel = _ref8.filterLabel,
507
- filter = _ref8.filter;
268
+ }, categoryTitle), hasAccordion ? /*#__PURE__*/_react.default.createElement(_react2.Accordion, null, filters.map(function (_ref3) {
269
+ var filterLabel = _ref3.filterLabel,
270
+ filter = _ref3.filter;
508
271
  return /*#__PURE__*/_react.default.createElement(_react2.AccordionItem, {
509
272
  title: filterLabel,
510
273
  key: filterLabel
511
274
  }, renderFilter(filter));
512
- })) : filters.map(function (_ref9) {
513
- var filter = _ref9.filter;
275
+ })) : filters.map(function (_ref4) {
276
+ var filter = _ref4.filter;
514
277
  return renderFilter(filter);
515
278
  }));
516
279
  })), renderActionSet()));
@@ -91,14 +91,14 @@ var FilterProvider = function FilterProvider(_ref2) {
91
91
 
92
92
  var _useState = (0, _react.useState)(false),
93
93
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
94
- leftPanelOpen = _useState2[0],
95
- setLeftPanelOpen = _useState2[1];
94
+ panelOpen = _useState2[0],
95
+ setPanelOpen = _useState2[1];
96
96
 
97
97
  var value = {
98
98
  filterTags: filterTags,
99
99
  EventEmitter: EventEmitter,
100
- leftPanelOpen: leftPanelOpen,
101
- setLeftPanelOpen: setLeftPanelOpen
100
+ panelOpen: panelOpen,
101
+ setPanelOpen: setPanelOpen
102
102
  };
103
103
  return /*#__PURE__*/_react.default.createElement(FilterContext.Provider, {
104
104
  value: value
@@ -5,6 +5,12 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
+ Object.defineProperty(exports, "useFilters", {
9
+ enumerable: true,
10
+ get: function get() {
11
+ return _useFilters.default;
12
+ }
13
+ });
8
14
  Object.defineProperty(exports, "useInitialStateFromFilters", {
9
15
  enumerable: true,
10
16
  get: function get() {
@@ -28,4 +34,6 @@ var _useInitialStateFromFilters = _interopRequireDefault(require("./useInitialSt
28
34
 
29
35
  var _useSubscribeToEventEmitter = _interopRequireDefault(require("./useSubscribeToEventEmitter"));
30
36
 
37
+ var _useFilters = _interopRequireDefault(require("./useFilters"));
38
+
31
39
  var _useShouldDisableButtons = _interopRequireDefault(require("./useShouldDisableButtons"));