@bigbinary/neeto-filters-frontend 3.0.0 → 3.0.1

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
@@ -1,14 +1,14 @@
1
1
  import React, { useState, useRef, useEffect, useTransition, useMemo } from 'react';
2
2
  import classnames from 'classnames';
3
- import { curryN, isNil, complement, curry, isEmpty, either, groupBy, anyPass, any, toLower, mergeLeft, identity, omit, mergeRight, toPairs, concat, pluck, has as has$1, equals, pick, modify, prop, isNotNil, append, last, not } from 'ramda';
3
+ import { curryN, isNil, complement, isEmpty, curry, either, groupBy, anyPass, any, toLower, mergeLeft, identity, omit, mergeRight, toPairs, concat, pluck, has as has$1, equals, pick, modify, prop, isNotNil, append, last, not } from 'ramda';
4
+ import { useHotKeys, useMutationWithInvalidation, useQueryParams, useDebounce, withT } from '@bigbinary/neeto-commons-frontend/react-utils';
5
+ import { getQueryParams, dateFormat, buildUrl } from '@bigbinary/neeto-commons-frontend/utils';
4
6
  import { Tooltip, Typography, Dropdown as Dropdown$2, Button, Pane as Pane$1, Alert, Select, DatePicker, TimePicker, Input as Input$1, Accordion, Spinner } from '@bigbinary/neetoui';
5
7
  import { useTranslation, Trans } from 'react-i18next';
6
8
  import { useHistory, useLocation } from 'react-router-dom';
7
- import { useHotKeys, useMutationWithInvalidation, useDebounce, withT } from '@bigbinary/neeto-commons-frontend/react-utils';
8
9
  import { Close, Search, Check, MenuHorizontal, Down, Settings } from '@bigbinary/neeto-icons';
9
10
  import i18next, { t as t$1 } from 'i18next';
10
11
  import dayjs from 'dayjs';
11
- import { getQueryParams, dateFormat } from '@bigbinary/neeto-commons-frontend/utils';
12
12
  import * as yup from 'yup';
13
13
  import timezone from 'dayjs/plugin/timezone';
14
14
  import utc from 'dayjs/plugin/utc';
@@ -427,8 +427,8 @@ dayjs.extend(timezone);
427
427
  dayjs.extend(weekday);
428
428
  dayjs.Ls.en.weekStart = 1;
429
429
 
430
- function ownKeys$5(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; }
431
- function _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$5(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$5(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
430
+ function ownKeys$4(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; }
431
+ function _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$4(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
432
432
  var groupByGroup = groupBy(function (_ref) {
433
433
  var group = _ref.group;
434
434
  return group || "individual";
@@ -592,9 +592,9 @@ var buildFiltersFromSearchParams = function buildFiltersFromSearchParams(columns
592
592
  return mergeLeft({
593
593
  value: ""
594
594
  }, column);
595
- } else if (isNil(value) || value === "") {
595
+ } else if (isNil(value) || value === "" || column.key === "keyword") {
596
596
  return null;
597
- } else if (column.key === "keyword") {
597
+ } else if (column.key === "search_term") {
598
598
  return mergeLeft({
599
599
  value: value,
600
600
  type: "text",
@@ -721,7 +721,7 @@ var buildDatePayload = function buildDatePayload(value) {
721
721
  var buildSingleDatePayload = function buildSingleDatePayload(filter) {
722
722
  var value = filter.value;
723
723
  var filterValue = Array.isArray(value) ? value.join(",") : value;
724
- return _objectSpread$5(_objectSpread$5({}, filter), {}, {
724
+ return _objectSpread$4(_objectSpread$4({}, filter), {}, {
725
725
  value: filterValue,
726
726
  type: "date"
727
727
  });
@@ -729,7 +729,7 @@ var buildSingleDatePayload = function buildSingleDatePayload(filter) {
729
729
  var buildSingleTimePayload = function buildSingleTimePayload(filter) {
730
730
  var value = filter.value;
731
731
  var filterValue = Array.isArray(value) ? value.join(",") : value;
732
- return _objectSpread$5(_objectSpread$5({}, filter), {}, {
732
+ return _objectSpread$4(_objectSpread$4({}, filter), {}, {
733
733
  value: filterValue,
734
734
  type: "time"
735
735
  });
@@ -750,7 +750,7 @@ var buildFiltersPayload = function buildFiltersPayload(filters) {
750
750
  var payload = removeBy({
751
751
  value: ""
752
752
  }, filters).map(function (filter) {
753
- if (filter.key === "keyword" && isMultiModelFilter(filter)) {
753
+ if (filter.key === "search_term" && isMultiModelFilter(filter)) {
754
754
  return splitFilter(filter);
755
755
  }
756
756
  var filterPayload = omit(["key", "label", "values", "setValue"], filter);
@@ -784,14 +784,14 @@ var buildSegmentsPayload = function buildSegmentsPayload(filters) {
784
784
  var payload = removeBy({
785
785
  value: ""
786
786
  }, filters).map(function (filter) {
787
- if (filter.key === "keyword") {
787
+ if (filter.key === "search_term") {
788
788
  return false;
789
789
  }
790
790
  var filterPayload = omit(["label", "values", "setValue", "defaultValue"], filter);
791
791
  var _filterPayload$defaul2 = filterPayload.defaultType,
792
792
  defaultType = _filterPayload$defaul2 === void 0 ? filterPayload.type : _filterPayload$defaul2,
793
793
  value = filterPayload.value;
794
- if (filter.key !== "keyword" && isMultiModelFilter(filterPayload)) {
794
+ if (filter.key !== "search_term" && isMultiModelFilter(filterPayload)) {
795
795
  throw i18next.t("neetoFilters.errors.cannotPassMultipleModels");
796
796
  }
797
797
  if (isMulti(defaultType)) {
@@ -893,7 +893,7 @@ var createUrlParamString = function createUrlParamString(_ref15) {
893
893
  _filter$defaultType = filter.defaultType,
894
894
  defaultType = _filter$defaultType === void 0 ? filter.type : _filter$defaultType,
895
895
  rule = filter.rule;
896
- if (key === "keyword") {
896
+ if (key === "search_term") {
897
897
  return value;
898
898
  } else if (isDigit(defaultType) || isText(defaultType)) {
899
899
  return "".concat(value, "+rule-").concat(rule);
@@ -931,7 +931,7 @@ var buildUrlFromFilters = function buildUrlFromFilters(_ref16) {
931
931
  delete searchParams["segmentId"];
932
932
  }
933
933
  var defaultFilters = buildDefaultFilters(columns, filters);
934
- delete searchParams["keyword"];
934
+ delete searchParams["search_term"];
935
935
  concat(filters, defaultFilters).forEach(function (filter) {
936
936
  searchParams[filter.key] = createUrlParamString({
937
937
  filter: filter,
@@ -968,9 +968,9 @@ var buildUrlFromSegment = function buildUrlFromSegment(_ref19) {
968
968
  return !defaultValue && delete searchParams[key];
969
969
  });
970
970
  var defaultFilters = buildDefaultFilters(columns, filters);
971
- delete searchParams["keyword"];
972
- isNotEmpty(id) && (searchParams["segmentId"] = id);
971
+ delete searchParams["searchTerm"];
973
972
  concat(filters, defaultFilters).forEach(function (filter) {
973
+ isNotEmpty(id) && (searchParams["segmentId"] = id);
974
974
  searchParams[filter.key] = createUrlParamStringForSegments({
975
975
  filter: filter,
976
976
  columns: columns
@@ -978,8 +978,8 @@ var buildUrlFromSegment = function buildUrlFromSegment(_ref19) {
978
978
  });
979
979
  return new URLSearchParams(searchParams).toString();
980
980
  };
981
- var getKeywordValueFromUrl = function getKeywordValueFromUrl() {
982
- return getQueryParams()["keyword"] || "";
981
+ var getSearchTermFromUrl = function getSearchTermFromUrl() {
982
+ return getQueryParams()["search_term"] || "";
983
983
  };
984
984
  var buildFilterColumnsFromFields = function buildFilterColumnsFromFields(_ref21) {
985
985
  var fields = _ref21.fields,
@@ -1014,7 +1014,7 @@ var buildFilterColumnsFromFields = function buildFilterColumnsFromFields(_ref21)
1014
1014
  };
1015
1015
  var getColumnsWithStandardizedType = function getColumnsWithStandardizedType(columns) {
1016
1016
  return columns.map(function (column) {
1017
- return _objectSpread$5(_objectSpread$5({}, column), {}, {
1017
+ return _objectSpread$4(_objectSpread$4({}, column), {}, {
1018
1018
  type: standardizeColumnType(column.type)
1019
1019
  });
1020
1020
  });
@@ -1091,7 +1091,7 @@ var buildRuleValue = function buildRuleValue(_ref) {
1091
1091
  return "";
1092
1092
  };
1093
1093
  var hasOnlyKeywordFilter = function hasOnlyKeywordFilter(filters) {
1094
- return filters.length === 1 && filters[0].key === "keyword";
1094
+ return filters.length === 1 && filters[0].key === "search_term";
1095
1095
  };
1096
1096
 
1097
1097
  var Block = function Block(_ref) {
@@ -1235,8 +1235,8 @@ var QUERY_KEYS = {
1235
1235
  };
1236
1236
  var SEGMENTS_STALE_TIME = 900000; // 15 mins
1237
1237
 
1238
- function ownKeys$4(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; }
1239
- function _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$4(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1238
+ function ownKeys$3(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; }
1239
+ function _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1240
1240
  var SEGMENTS_LIST = QUERY_KEYS.SEGMENTS_LIST;
1241
1241
  var useFetchSegments = function useFetchSegments(_ref) {
1242
1242
  var entity = _ref.entity,
@@ -1263,17 +1263,17 @@ var useShowSegment = function useShowSegment(id) {
1263
1263
  }, options));
1264
1264
  };
1265
1265
  var useCreateSegment = function useCreateSegment(options) {
1266
- return useMutationWithInvalidation(segmentsApi.create, _objectSpread$4({
1266
+ return useMutationWithInvalidation(segmentsApi.create, _objectSpread$3({
1267
1267
  keysToInvalidate: [SEGMENTS_LIST]
1268
1268
  }, options));
1269
1269
  };
1270
1270
  var useUpdateSegment = function useUpdateSegment(options) {
1271
- return useMutationWithInvalidation(segmentsApi.update, _objectSpread$4({
1271
+ return useMutationWithInvalidation(segmentsApi.update, _objectSpread$3({
1272
1272
  keysToInvalidate: [SEGMENTS_LIST]
1273
1273
  }, options));
1274
1274
  };
1275
1275
  var useDestroySegment = function useDestroySegment(options) {
1276
- return useMutationWithInvalidation(segmentsApi.destroy, _objectSpread$4({
1276
+ return useMutationWithInvalidation(segmentsApi.destroy, _objectSpread$3({
1277
1277
  keysToInvalidate: [SEGMENTS_LIST]
1278
1278
  }, options));
1279
1279
  };
@@ -1423,8 +1423,8 @@ var Segment = function Segment(_ref) {
1423
1423
  }));
1424
1424
  };
1425
1425
 
1426
- function ownKeys$3(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; }
1427
- function _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1426
+ function ownKeys$2(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; }
1427
+ function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1428
1428
  var Bar = function Bar(_ref) {
1429
1429
  var entity = _ref.entity,
1430
1430
  className = _ref.className,
@@ -1443,14 +1443,17 @@ var Bar = function Bar(_ref) {
1443
1443
  var _useTranslation = useTranslation(),
1444
1444
  t = _useTranslation.t;
1445
1445
  var initialRenderRef = useRef(true);
1446
- var searchParams = new URLSearchParams(window.location.search);
1447
- var keywordFilter = _objectSpread$3({
1448
- key: "keyword",
1446
+ var searchParams = useQueryParams();
1447
+ var keywordValue = searchParams.search_term || "";
1448
+ var keywordFilter = _objectSpread$2(_objectSpread$2({
1449
1449
  type: "text",
1450
1450
  rule: "contains",
1451
- label: t("neetoFilters.labels.keyword")
1452
- }, keyword);
1453
- var filters = buildFiltersFromSearchParams(keyword.value !== "" ? [keywordFilter].concat(_toConsumableArray(columns)) : columns);
1451
+ label: t("neetoFilters.common.searchTerm")
1452
+ }, keyword), {}, {
1453
+ key: "search_term",
1454
+ value: keywordValue
1455
+ });
1456
+ var filters = buildFiltersFromSearchParams(isNotEmpty(keywordValue) ? [keywordFilter].concat(_toConsumableArray(columns)) : columns);
1454
1457
  var nonHiddenFilters = removeBy({
1455
1458
  hidden: true
1456
1459
  }, filters);
@@ -1466,11 +1469,11 @@ var Bar = function Bar(_ref) {
1466
1469
  return function () {
1467
1470
  return clearTimeout(handler);
1468
1471
  };
1469
- }, [keyword.value]);
1472
+ }, [keywordValue]);
1470
1473
  var handleSubmit = function handleSubmit(newFilters, isClearAll) {
1471
- var params = buildUrlFromFilters(_objectSpread$3({
1474
+ var params = buildUrlFromFilters(_objectSpread$2({
1472
1475
  columns: columns,
1473
- filters: keyword.value !== "" ? [].concat(_toConsumableArray(newFilters), [keywordFilter]) : newFilters
1476
+ filters: isNotEmpty(getSearchTermFromUrl()) ? [].concat(_toConsumableArray(newFilters), [keywordFilter]) : newFilters
1474
1477
  }, isClearAll && {
1475
1478
  isClearAll: true,
1476
1479
  childrenKeys: childrenKeys
@@ -1480,15 +1483,16 @@ var Bar = function Bar(_ref) {
1480
1483
  });
1481
1484
  };
1482
1485
  var handleDelete = function handleDelete(key) {
1483
- if (key === "keyword") {
1484
- keyword.setValue("");
1485
- keyword.value = "";
1486
+ if (key === "search_term") {
1487
+ var params = omit(["search_term"], getQueryParams());
1488
+ var pathname = window.location.pathname;
1489
+ history.push(buildUrl(pathname, params));
1490
+ return;
1486
1491
  }
1487
1492
  if (childrenKeys.includes(key)) {
1488
- searchParams["delete"](key);
1489
- history.push({
1490
- search: searchParams.toString()
1491
- });
1493
+ var _params = omit([key], getQueryParams());
1494
+ var _pathname = window.location.pathname;
1495
+ history.push(buildUrl(_pathname, _params));
1492
1496
  }
1493
1497
  var newFilters = removeBy({
1494
1498
  key: key
@@ -1496,12 +1500,13 @@ var Bar = function Bar(_ref) {
1496
1500
  handleSubmit(newFilters);
1497
1501
  };
1498
1502
  var handleClearAll = function handleClearAll() {
1499
- keyword.setValue("");
1500
- keyword.value = "";
1503
+ var params = omit(["search_term"], getQueryParams());
1504
+ var pathname = window.location.pathname;
1505
+ history.push(buildUrl(pathname, params));
1501
1506
  handleSubmit([], true);
1502
1507
  };
1503
1508
  var childrenFiltersApplied = childrenKeys.some(function (key) {
1504
- return searchParams.get(key);
1509
+ return searchParams.has(key);
1505
1510
  });
1506
1511
  var hideClearButton = nonHiddenFilters.every(function (_ref2) {
1507
1512
  var defaultValue = _ref2.defaultValue,
@@ -1523,7 +1528,7 @@ var Bar = function Bar(_ref) {
1523
1528
  className: "neeto-filters-bar--separator"
1524
1529
  }));
1525
1530
  }), childrenKeys.filter(function (childKey) {
1526
- return searchParams.get(childKey);
1531
+ return has$1(childKey, searchParams);
1527
1532
  }).map(function (childKey) {
1528
1533
  return /*#__PURE__*/React.createElement(React.Fragment, {
1529
1534
  key: childKey
@@ -4015,12 +4020,10 @@ Slider.Header = Header;
4015
4020
  Slider.Body = Body;
4016
4021
  Slider.Footer = Footer;
4017
4022
 
4018
- function ownKeys$2(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; }
4019
- function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4020
4023
  var useFilters = function useFilters(_ref) {
4021
4024
  var onFiltersChange = _ref.onFiltersChange,
4022
4025
  columns = _ref.columns,
4023
- keyword = _ref.keyword,
4026
+ keywordFilter = _ref.keywordFilter,
4024
4027
  onSelectorsChange = _ref.onSelectorsChange;
4025
4028
  var _useTransition = useTransition(),
4026
4029
  _useTransition2 = _slicedToArray(_useTransition, 2);
@@ -4032,16 +4035,10 @@ var useFilters = function useFilters(_ref) {
4032
4035
  var filters = buildFiltersFromSearchParams(columns, false);
4033
4036
  var history = useHistory();
4034
4037
  var defaultValuesOfColumns = JSON.stringify(pluck("defaultValue", columns));
4035
- var keywordFilter = _objectSpread$2({
4036
- key: "keyword",
4037
- type: "text",
4038
- rule: "contains",
4039
- label: "Keyword"
4040
- }, keyword);
4041
4038
  var handlePrecenseOfDefaultFilters = function handlePrecenseOfDefaultFilters(defaultFilters) {
4042
4039
  var params = buildUrlFromFilters({
4043
4040
  columns: columns,
4044
- filters: keyword.value !== "" ? [].concat(_toConsumableArray(defaultFilters), [keywordFilter]) : defaultFilters
4041
+ filters: isNotEmpty(getSearchTermFromUrl()) ? [].concat(_toConsumableArray(defaultFilters), [keywordFilter]) : defaultFilters
4045
4042
  });
4046
4043
  history.replace({
4047
4044
  search: params
@@ -4061,7 +4058,7 @@ var useFilters = function useFilters(_ref) {
4061
4058
  return;
4062
4059
  }
4063
4060
  var newFilters = buildFiltersFromSearchParams(columns);
4064
- var filtersPayload = keyword.value ? append(keywordFilter, newFilters) : newFilters;
4061
+ var filtersPayload = isNotEmpty(getSearchTermFromUrl()) ? append(keywordFilter, newFilters) : newFilters;
4065
4062
  handleFiltersChange(filtersPayload);
4066
4063
  onSelectorsChange(buildSelectorsFromURL(columns));
4067
4064
  };
@@ -4079,14 +4076,12 @@ var useFilters = function useFilters(_ref) {
4079
4076
  })
4080
4077
  });
4081
4078
  filters = buildFiltersFromSearchParams(columns, false);
4082
- isNil(searchParams["keyword"]) && keyword.setValue("");
4083
4079
  }
4084
4080
  };
4085
4081
  useEffect(function () {
4086
4082
  if (initialRender.current) {
4087
4083
  initialRender.current = false;
4088
- var keywordValue = getKeywordValueFromUrl();
4089
- keyword.setValue(keywordValue);
4084
+ var keywordValue = getSearchTermFromUrl();
4090
4085
  var defaultFilters = buildDefaultFilters(columns, filters);
4091
4086
  isNotEmpty(defaultFilters) && handlePrecenseOfDefaultFilters(defaultFilters);
4092
4087
  prevFilters.current = append(mergeRight(keywordFilter, {
@@ -4798,7 +4793,7 @@ var Pane = function Pane(_ref) {
4798
4793
  childrenKeys = _ref$childrenKeys === void 0 ? [] : _ref$childrenKeys,
4799
4794
  children = _ref.children,
4800
4795
  otherProps = _objectWithoutProperties(_ref, _excluded);
4801
- var searchParams = getQueryParams();
4796
+ var searchParams = useQueryParams();
4802
4797
  var _useState = useState(""),
4803
4798
  _useState2 = _slicedToArray(_useState, 2),
4804
4799
  searchTerm = _useState2[0],
@@ -4821,7 +4816,7 @@ var Pane = function Pane(_ref) {
4821
4816
  var isClearAll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
4822
4817
  var params = buildUrlFromFilters(_objectSpread$1({
4823
4818
  columns: columns,
4824
- filters: keyword.value !== "" ? [].concat(_toConsumableArray(newFilters), [keywordFilter]) : newFilters
4819
+ filters: isNotEmpty(getSearchTermFromUrl()) ? [].concat(_toConsumableArray(newFilters), [keywordFilter]) : newFilters
4825
4820
  }, isClearAll && {
4826
4821
  isClearAll: true,
4827
4822
  childrenKeys: childrenKeys
@@ -4830,21 +4825,24 @@ var Pane = function Pane(_ref) {
4830
4825
  search: params
4831
4826
  });
4832
4827
  };
4828
+ var keywordFilter = _objectSpread$1(_objectSpread$1({
4829
+ type: "text",
4830
+ rule: "contains",
4831
+ label: t("neetoFilters.common.searchTerm")
4832
+ }, keyword), {}, {
4833
+ key: "search_term",
4834
+ value: searchParams.search_term || ""
4835
+ });
4833
4836
  var filters = useFilters({
4834
4837
  onFiltersChange: onChange,
4835
4838
  columns: columns,
4836
- keyword: keyword,
4839
+ keywordFilter: keywordFilter,
4837
4840
  onSelectorsChange: onSelectorsChange
4838
4841
  });
4839
- var keywordFilter = _objectSpread$1({
4840
- key: "keyword",
4841
- type: "text",
4842
- rule: "contains",
4843
- label: t("neetoFilters.labels.keyword")
4844
- }, keyword);
4845
4842
  var handleClearAll = function handleClearAll() {
4846
- keyword.setValue("");
4847
- keyword.value = "";
4843
+ var params = omit(["search_term"], getQueryParams());
4844
+ var pathname = window.location.pathname;
4845
+ history.push(buildUrl(pathname, params));
4848
4846
  handleChange([], true);
4849
4847
  };
4850
4848
  var handleClose = function handleClose() {