@bigbinary/neeto-filters-frontend 2.12.7 → 2.12.9

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.
package/dist/index.js CHANGED
@@ -6973,12 +6973,9 @@ var Datetime = function Datetime(_ref) {
6973
6973
  filter = _ref.filter,
6974
6974
  handleApplyFilter = _ref.handleApplyFilter,
6975
6975
  autoFocus = _ref.autoFocus;
6976
- var _useState = useState(initializeDateRule(filter)),
6977
- _useState2 = _slicedToArray(_useState, 2),
6978
- selectedRule = _useState2[0],
6979
- setSelectedRule = _useState2[1];
6980
6976
  var _useTranslation = useTranslation(),
6981
6977
  t = _useTranslation.t;
6978
+ var selectedRule = filter ? initializeDateRule(filter) : {};
6982
6979
  var key = column.key,
6983
6980
  _column$defaultType = column.defaultType,
6984
6981
  defaultType = _column$defaultType === void 0 ? column.type : _column$defaultType,
@@ -6990,10 +6987,8 @@ var Datetime = function Datetime(_ref) {
6990
6987
  handleApplyFilter({
6991
6988
  _delete: true
6992
6989
  });
6993
- setSelectedRule({});
6994
6990
  return;
6995
6991
  }
6996
- setSelectedRule(option);
6997
6992
  var updatedFilter = buildUpdatedFilter({
6998
6993
  column: column,
6999
6994
  defaultType: defaultType,
@@ -7006,7 +7001,6 @@ var Datetime = function Datetime(_ref) {
7006
7001
  handleApplyFilter({
7007
7002
  _delete: true
7008
7003
  });
7009
- setSelectedRule({});
7010
7004
  return;
7011
7005
  }
7012
7006
  var updatedFilter = buildUpdatedFilter({
@@ -7265,7 +7259,8 @@ var Text = function Text(_ref) {
7265
7259
  filter = _ref.filter,
7266
7260
  filters = _ref.filters,
7267
7261
  handleApplyFilter = _ref.handleApplyFilter,
7268
- autoFocus = _ref.autoFocus;
7262
+ autoFocus = _ref.autoFocus,
7263
+ onClose = _ref.onClose;
7269
7264
  var key = column.key,
7270
7265
  _column$defaultType = column.defaultType,
7271
7266
  defaultType = _column$defaultType === void 0 ? column.type : _column$defaultType,
@@ -7292,14 +7287,35 @@ var Text = function Text(_ref) {
7292
7287
  var debouncedInputValue = useDebounce(inputValue);
7293
7288
  var _useTranslation = useTranslation(),
7294
7289
  t = _useTranslation.t;
7290
+ var handleUpdateAndApplyFilter = function handleUpdateAndApplyFilter() {
7291
+ var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : debouncedInputValue;
7292
+ var rule = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : selectedRule;
7293
+ if (equals(filter === null || filter === void 0 ? void 0 : filter.value, value) && equals(selectedRule, rule)) return;
7294
+ var updatedFilter = buildUpdatedFilter({
7295
+ column: column,
7296
+ defaultType: defaultType,
7297
+ option: {},
7298
+ rule: rule.value,
7299
+ value: value.trim()
7300
+ });
7301
+ handleApplyFilter(updatedFilter);
7302
+ };
7303
+ var handleKeydown = function handleKeydown(e) {
7304
+ if (e.key === "Enter") {
7305
+ handleUpdateAndApplyFilter(inputValue);
7306
+ onClose();
7307
+ }
7308
+ };
7309
+ var handleRuleChange = function handleRuleChange(ruleOption) {
7310
+ setSelectedRule(ruleOption);
7311
+ if (!debouncedInputValue) return;
7312
+ handleUpdateAndApplyFilter(debouncedInputValue, ruleOption);
7313
+ };
7295
7314
 
7296
7315
  // Reset states when "Clear filters" button is clicked.
7297
7316
  useEffect(function () {
7298
- if (isEmpty(filters)) {
7299
- setInputValue("");
7300
- setSelectedRule(ruleOptions[0]);
7301
- }
7302
- }, [filters]);
7317
+ (isEmpty(filters) || isNil(filter)) && setInputValue("");
7318
+ }, [filters, filter]);
7303
7319
  useEffect(function () {
7304
7320
  if (!debouncedInputValue) {
7305
7321
  !isUndefinedOrEmpty(filter) && handleApplyFilter({
@@ -7307,27 +7323,8 @@ var Text = function Text(_ref) {
7307
7323
  });
7308
7324
  return;
7309
7325
  }
7310
- var updatedFilter = buildUpdatedFilter({
7311
- column: column,
7312
- defaultType: defaultType,
7313
- option: {},
7314
- rule: selectedRule.value,
7315
- value: debouncedInputValue.trim()
7316
- });
7317
- handleApplyFilter(updatedFilter);
7326
+ handleUpdateAndApplyFilter();
7318
7327
  }, [debouncedInputValue]);
7319
- var handleRuleChange = function handleRuleChange(ruleOption) {
7320
- setSelectedRule(ruleOption);
7321
- if (!debouncedInputValue) return;
7322
- var updatedFilter = buildUpdatedFilter({
7323
- column: column,
7324
- defaultType: defaultType,
7325
- option: {},
7326
- rule: ruleOption.value,
7327
- value: debouncedInputValue.trim()
7328
- });
7329
- handleApplyFilter(updatedFilter);
7330
- };
7331
7328
  return /*#__PURE__*/React.createElement("div", {
7332
7329
  className: "neeto-filters-pane-filter__item-wrapper"
7333
7330
  }, showRuleSelector && /*#__PURE__*/React.createElement(Select, {
@@ -7349,7 +7346,8 @@ var Text = function Text(_ref) {
7349
7346
  }),
7350
7347
  onChange: function onChange(event) {
7351
7348
  return setInputValue(event.target.value);
7352
- }
7349
+ },
7350
+ onKeyDown: handleKeydown
7353
7351
  }, otherProps)));
7354
7352
  };
7355
7353
 
@@ -7422,7 +7420,8 @@ var Item = function Item(_ref) {
7422
7420
  var column = _ref.column,
7423
7421
  filters = _ref.filters,
7424
7422
  onChange = _ref.onChange,
7425
- autoFocus = _ref.autoFocus;
7423
+ autoFocus = _ref.autoFocus,
7424
+ onClose = _ref.onClose;
7426
7425
  var key = column.key,
7427
7426
  _column$defaultType = column.defaultType,
7428
7427
  defaultType = _column$defaultType === void 0 ? column.type : _column$defaultType;
@@ -7444,7 +7443,8 @@ var Item = function Item(_ref) {
7444
7443
  column: column,
7445
7444
  filter: filter,
7446
7445
  filters: filters,
7447
- handleApplyFilter: handleApplyFilter
7446
+ handleApplyFilter: handleApplyFilter,
7447
+ onClose: onClose
7448
7448
  });
7449
7449
  }
7450
7450
  if (isDate(defaultType)) {
@@ -7606,7 +7606,8 @@ var Pane = function Pane(_ref) {
7606
7606
  column: column,
7607
7607
  filters: filters,
7608
7608
  key: column.key,
7609
- onChange: handleChange
7609
+ onChange: handleChange,
7610
+ onClose: onClose
7610
7611
  });
7611
7612
  }), isPresent(groupedColumns) && /*#__PURE__*/React.createElement(Accordion, {
7612
7613
  defaultActiveKey: groupedColumns.findIndex(function (_ref4) {