@commercetools-uikit/filters 19.24.0 → 19.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -11,6 +11,8 @@ var _findInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/insta
|
|
|
11
11
|
var _filterInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/filter');
|
|
12
12
|
var _sortInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/sort');
|
|
13
13
|
var _includesInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/includes');
|
|
14
|
+
var _Set = require('@babel/runtime-corejs3/core-js-stable/set');
|
|
15
|
+
var _Array$from = require('@babel/runtime-corejs3/core-js-stable/array/from');
|
|
14
16
|
var _concatInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/concat');
|
|
15
17
|
var react$1 = require('react');
|
|
16
18
|
var Popover = require('@radix-ui/react-popover');
|
|
@@ -25,7 +27,6 @@ var jsxRuntime = require('@emotion/react/jsx-runtime');
|
|
|
25
27
|
var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
|
|
26
28
|
var _objectWithoutProperties = require('@babel/runtime-corejs3/helpers/objectWithoutProperties');
|
|
27
29
|
var _forEachInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/for-each');
|
|
28
|
-
var _Array$from = require('@babel/runtime-corejs3/core-js-stable/array/from');
|
|
29
30
|
var _Object$keys = require('@babel/runtime-corejs3/core-js-stable/object/keys');
|
|
30
31
|
var _Object$getOwnPropertySymbols = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols');
|
|
31
32
|
var _Object$getOwnPropertyDescriptor = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor');
|
|
@@ -61,6 +62,8 @@ var _findInstanceProperty__default = /*#__PURE__*/_interopDefault(_findInstanceP
|
|
|
61
62
|
var _filterInstanceProperty__default = /*#__PURE__*/_interopDefault(_filterInstanceProperty);
|
|
62
63
|
var _sortInstanceProperty__default = /*#__PURE__*/_interopDefault(_sortInstanceProperty);
|
|
63
64
|
var _includesInstanceProperty__default = /*#__PURE__*/_interopDefault(_includesInstanceProperty);
|
|
65
|
+
var _Set__default = /*#__PURE__*/_interopDefault(_Set);
|
|
66
|
+
var _Array$from__default = /*#__PURE__*/_interopDefault(_Array$from);
|
|
64
67
|
var _concatInstanceProperty__default = /*#__PURE__*/_interopDefault(_concatInstanceProperty);
|
|
65
68
|
var Popover__namespace = /*#__PURE__*/_interopNamespace(Popover);
|
|
66
69
|
var CollapsibleMotion__default = /*#__PURE__*/_interopDefault(CollapsibleMotion);
|
|
@@ -68,7 +71,6 @@ var FlatButton__default = /*#__PURE__*/_interopDefault(FlatButton);
|
|
|
68
71
|
var SelectInput__default = /*#__PURE__*/_interopDefault(SelectInput);
|
|
69
72
|
var Spacings__default = /*#__PURE__*/_interopDefault(Spacings);
|
|
70
73
|
var _forEachInstanceProperty__default = /*#__PURE__*/_interopDefault(_forEachInstanceProperty);
|
|
71
|
-
var _Array$from__default = /*#__PURE__*/_interopDefault(_Array$from);
|
|
72
74
|
var _Object$keys__default = /*#__PURE__*/_interopDefault(_Object$keys);
|
|
73
75
|
var _Object$getOwnPropertySymbols__default = /*#__PURE__*/_interopDefault(_Object$getOwnPropertySymbols);
|
|
74
76
|
var _Object$getOwnPropertyDescriptor__default = /*#__PURE__*/_interopDefault(_Object$getOwnPropertyDescriptor);
|
|
@@ -460,8 +462,7 @@ function Filters(_ref) {
|
|
|
460
462
|
const visibleFiltersFromProps = _sortInstanceProperty__default["default"](_context2 = _filterInstanceProperty__default["default"](filters).call(filters, _ref4 => {
|
|
461
463
|
let key = _ref4.key,
|
|
462
464
|
isPersistent = _ref4.isPersistent;
|
|
463
|
-
|
|
464
|
-
return isVisible;
|
|
465
|
+
return Boolean(isPersistent) || _includesInstanceProperty__default["default"](appliedFilterKeys).call(appliedFilterKeys, key);
|
|
465
466
|
})
|
|
466
467
|
// persistent filters should be first in filter list
|
|
467
468
|
).call(_context2, _ref5 => {
|
|
@@ -478,6 +479,28 @@ function Filters(_ref) {
|
|
|
478
479
|
localVisibleFilters = _useState4[0],
|
|
479
480
|
setLocalVisibleFilters = _useState4[1];
|
|
480
481
|
|
|
482
|
+
// Update localVisibleFilters if appliedFilters or filters prop changes
|
|
483
|
+
react$1.useEffect(() => {
|
|
484
|
+
var _context3;
|
|
485
|
+
const allFilterKeys = _mapInstanceProperty__default["default"](filters).call(filters, f => f.key);
|
|
486
|
+
const persistedFilterKeys = _mapInstanceProperty__default["default"](_context3 = _filterInstanceProperty__default["default"](filters).call(filters, filter => filter.isPersistent)).call(_context3, filter => filter.key);
|
|
487
|
+
const appliedFilterKeysWithValues = _mapInstanceProperty__default["default"](appliedFilters).call(appliedFilters, af => af.filterKey);
|
|
488
|
+
|
|
489
|
+
// Calculate keys that *must* be visible based on props
|
|
490
|
+
const requiredVisibleKeys = new _Set__default["default"]([...persistedFilterKeys, ...appliedFilterKeysWithValues]);
|
|
491
|
+
|
|
492
|
+
// Update state: keep existing keys, add required keys, remove keys no longer in props.filters
|
|
493
|
+
setLocalVisibleFilters(currentVisibleFilters => {
|
|
494
|
+
var _context4;
|
|
495
|
+
const combinedKeys = new _Set__default["default"]([...currentVisibleFilters, ...requiredVisibleKeys]);
|
|
496
|
+
// Ensure all keys in the final state actually exist in the filters prop
|
|
497
|
+
return _filterInstanceProperty__default["default"](_context4 = _Array$from__default["default"](combinedKeys)).call(_context4, key => _includesInstanceProperty__default["default"](allFilterKeys).call(allFilterKeys, key));
|
|
498
|
+
});
|
|
499
|
+
|
|
500
|
+
// Update the ref for persisted keys (used elsewhere)
|
|
501
|
+
persistedFiltersRef.current = persistedFilterKeys;
|
|
502
|
+
}, [appliedFilters, filters]); // Keep dependencies correct
|
|
503
|
+
|
|
481
504
|
//update localVisibleFilters if persisted filter count changes
|
|
482
505
|
if (persistedFiltersRef.current.length !== persistedFilterKeys.length) {
|
|
483
506
|
setLocalVisibleFilters(_mapInstanceProperty__default["default"](visibleFiltersFromProps).call(visibleFiltersFromProps, _ref7 => {
|
|
@@ -503,7 +526,7 @@ function Filters(_ref) {
|
|
|
503
526
|
label: intl.formatMessage(messages.filtersButtonLabel),
|
|
504
527
|
icon: jsxRuntime.jsx(icons.FilterIcon, {}),
|
|
505
528
|
onClick: handleFiltersClick
|
|
506
|
-
}), appliedFilters.length >
|
|
529
|
+
}), appliedFilters.length > 0 && !showFilterControls && jsxRuntime.jsx(Badge, {
|
|
507
530
|
id: 'uikit-filters-selected-filter-count',
|
|
508
531
|
label: `${appliedFilters.length}`
|
|
509
532
|
})]
|
|
@@ -570,8 +593,8 @@ function Filters(_ref) {
|
|
|
570
593
|
appearance: "filter",
|
|
571
594
|
options: getFilterOptions(filters, filterGroups),
|
|
572
595
|
onChange: e => {
|
|
573
|
-
var
|
|
574
|
-
setLocalVisibleFilters(_concatInstanceProperty__default["default"](
|
|
596
|
+
var _context5;
|
|
597
|
+
setLocalVisibleFilters(_concatInstanceProperty__default["default"](_context5 = Array.prototype).call(_context5, e.target.value ? e.target.value : []));
|
|
575
598
|
},
|
|
576
599
|
value: localVisibleFilters,
|
|
577
600
|
isMulti: true
|
|
@@ -604,7 +627,7 @@ Filters.propTypes = {};
|
|
|
604
627
|
Filters.displayName = 'Filters';
|
|
605
628
|
|
|
606
629
|
// NOTE: This string will be replaced on build time with the package version.
|
|
607
|
-
var version = "19.
|
|
630
|
+
var version = "19.25.0";
|
|
608
631
|
|
|
609
632
|
exports["default"] = Filters;
|
|
610
633
|
exports.version = version;
|