react-core-ts 2.1.9 → 2.1.10

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.
@@ -95,39 +95,41 @@ var filterSuggestions_1 = require("./utilities/filterSuggestions");
95
95
  var icons_1 = require("./utilities/icons");
96
96
  var getKeyValue_1 = require("./utilities/getKeyValue");
97
97
  var ExpandableAutoComplete = (0, react_1.forwardRef)(function (_a, ref) {
98
- var label = _a.label, onChange = _a.onChange, _b = _a.getData, getData = _b === void 0 ? function () { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
98
+ var _b;
99
+ var label = _a.label, onChange = _a.onChange, _c = _a.getData, getData = _c === void 0 ? function () { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
99
100
  return [2 /*return*/, []];
100
- }); }); } : _b, _c = _a.data, data = _c === void 0 ? [] : _c, errors = _a.errors, _d = _a.required, required = _d === void 0 ? false : _d, name = _a.name, _e = _a.fullWidth, fullWidth = _e === void 0 ? false : _e, placeholder = _a.placeholder, id = _a.id, _f = _a.type, type = _f === void 0 ? 'custom_select' : _f, _g = _a.selectedItems, propsSeelctedItems = _g === void 0 ? [] : _g, _h = _a.readOnly, readOnly = _h === void 0 ? false : _h, _j = _a.disabled, disabled = _j === void 0 ? false : _j, value = _a.value, _k = _a.isMultiple, isMultiple = _k === void 0 ? false : _k, _l = _a.desc, desc = _l === void 0 ? 'name' : _l, _m = _a.descId, descId = _m === void 0 ? 'id' : _m, singleSelect = _a.singleSelect, className = _a.className, _o = _a.async, async = _o === void 0 ? false : _o, paginationEnabled = _a.paginationEnabled, initialLoad = _a.initialLoad, actionLabel = _a.actionLabel, handleAction = _a.handleAction, nextBlock = _a.nextBlock, notDataMessage = _a.notDataMessage, onFocus = _a.onFocus, _p = _a.expandable, expandable = _p === void 0 ? false : _p, _q = _a.textCount, textCount = _q === void 0 ? 10 : _q, _r = _a.itemCount, itemCount = _r === void 0 ? 1 : _r, scrollRef = _a.scrollRef, _s = _a.isTreeDropdown, isTreeDropdown = _s === void 0 ? false : _s, _t = _a.shortCode, shortCode = _t === void 0 ? '' : _t, _u = _a.labelCode, labelCode = _u === void 0 ? '' : _u, _v = _a.typeOnlyFetch, typeOnlyFetch = _v === void 0 ? false : _v, _w = _a.autoDropdown, autoDropdown = _w === void 0 ? false : _w, _x = _a.enableSelectAll, enableSelectAll = _x === void 0 ? false : _x, _y = _a.matchFromStart, matchFromStart = _y === void 0 ? false : _y;
101
+ }); }); } : _c, _d = _a.data, data = _d === void 0 ? [] : _d, errors = _a.errors, _e = _a.required, required = _e === void 0 ? false : _e, name = _a.name, _f = _a.fullWidth, fullWidth = _f === void 0 ? false : _f, placeholder = _a.placeholder, id = _a.id, _g = _a.type, type = _g === void 0 ? 'custom_select' : _g, _h = _a.selectedItems, propsSeelctedItems = _h === void 0 ? [] : _h, _j = _a.readOnly, readOnly = _j === void 0 ? false : _j, _k = _a.disabled, disabled = _k === void 0 ? false : _k, value = _a.value, _l = _a.isMultiple, isMultiple = _l === void 0 ? false : _l, _m = _a.desc, desc = _m === void 0 ? 'name' : _m, _o = _a.descId, descId = _o === void 0 ? 'id' : _o, singleSelect = _a.singleSelect, className = _a.className, _p = _a.async, async = _p === void 0 ? false : _p, paginationEnabled = _a.paginationEnabled, initialLoad = _a.initialLoad, actionLabel = _a.actionLabel, handleAction = _a.handleAction, nextBlock = _a.nextBlock, notDataMessage = _a.notDataMessage, onFocus = _a.onFocus, _q = _a.expandable, expandable = _q === void 0 ? false : _q, _r = _a.textCount, textCount = _r === void 0 ? 10 : _r, _s = _a.itemCount, itemCount = _s === void 0 ? 1 : _s, scrollRef = _a.scrollRef, _t = _a.isTreeDropdown, isTreeDropdown = _t === void 0 ? false : _t, _u = _a.shortCode, shortCode = _u === void 0 ? '' : _u, _v = _a.labelCode, labelCode = _v === void 0 ? '' : _v, _w = _a.typeOnlyFetch, typeOnlyFetch = _w === void 0 ? false : _w, _x = _a.autoDropdown, autoDropdown = _x === void 0 ? false : _x, _y = _a.enableSelectAll, enableSelectAll = _y === void 0 ? false : _y, _z = _a.matchFromStart, matchFromStart = _z === void 0 ? false : _z;
101
102
  var dropdownRef = (0, react_1.useRef)(null);
102
103
  var expandableContainerRef = (0, react_1.useRef)(null);
103
- var _z = (0, react_1.useState)(true), isExpandableSingleLine = _z[0], setIsExpandableSingleLine = _z[1];
104
+ var isExpandableSingleLineRef = (0, react_1.useRef)(true);
105
+ var _0 = (0, react_1.useState)(true), isExpandableSingleLine = _0[0], setIsExpandableSingleLine = _0[1];
104
106
  // State Hooks Section
105
- var _0 = (0, react_1.useState)(true), isInitialRender = _0[0], setIsInitialRender = _0[1];
106
- var _1 = (0, react_1.useState)(value), inputValue = _1[0], setInputValue = _1[1];
107
- var _2 = (0, react_1.useState)(''), searchValue = _2[0], setSearchValue = _2[1];
108
- var _3 = (0, react_1.useState)(1), nextPage = _3[0], setNextPage = _3[1];
109
- var _4 = (0, react_1.useState)(false), dropOpen = _4[0], setDropOpen = _4[1];
110
- var _5 = (0, react_1.useState)([]), selectedItems = _5[0], setSelectedItems = _5[1];
111
- var _6 = (0, react_1.useState)(0), focusedIndex = _6[0], setFocusedIndex = _6[1];
107
+ var _1 = (0, react_1.useState)(true), isInitialRender = _1[0], setIsInitialRender = _1[1];
108
+ var _2 = (0, react_1.useState)(value), inputValue = _2[0], setInputValue = _2[1];
109
+ var _3 = (0, react_1.useState)(''), searchValue = _3[0], setSearchValue = _3[1];
110
+ var _4 = (0, react_1.useState)(1), nextPage = _4[0], setNextPage = _4[1];
111
+ var _5 = (0, react_1.useState)(false), dropOpen = _5[0], setDropOpen = _5[1];
112
+ var _6 = (0, react_1.useState)([]), selectedItems = _6[0], setSelectedItems = _6[1];
113
+ var _7 = (0, react_1.useState)(0), focusedIndex = _7[0], setFocusedIndex = _7[1];
112
114
  var itemRefs = (0, react_1.useRef)([]);
113
115
  var itemsRef = (0, react_1.useRef)(null);
114
116
  var dropBtnRef = (0, react_1.useRef)(null);
115
- var _7 = (0, react_1.useState)(false), refetchData = _7[0], setRefetchData = _7[1];
116
- var _8 = (0, react_1.useState)(false), selectAll = _8[0], setSelectAll = _8[1];
117
+ var _8 = (0, react_1.useState)(false), refetchData = _8[0], setRefetchData = _8[1];
118
+ var _9 = (0, react_1.useState)(false), selectAll = _9[0], setSelectAll = _9[1];
117
119
  // API call for suggestions through a custom hook
118
120
  var inputRef = (0, react_1.useRef)(null);
119
121
  var dropRef = (0, react_1.useRef)(null);
120
122
  var typeRef = (0, react_1.useRef)(0);
121
123
  (0, react_1.useImperativeHandle)(ref, function () { return inputRef.current; });
122
- var _9 = (0, react_1.useState)({
124
+ var _10 = (0, react_1.useState)({
123
125
  top: 0,
124
126
  left: 0,
125
127
  width: 200,
126
- }), dropdownStyle = _9[0], setDropdownStyle = _9[1];
128
+ }), dropdownStyle = _10[0], setDropdownStyle = _10[1];
127
129
  var adjustDropdownPosition = function () {
128
130
  if (dropdownRef.current) {
129
131
  var inputRect = dropdownRef.current.getBoundingClientRect();
130
- var dropdownPosition = {
132
+ var dropdownPosition_1 = {
131
133
  left: inputRect.left + window.scrollX,
132
134
  width: inputRect.width,
133
135
  top: 0,
@@ -137,7 +139,7 @@ var ExpandableAutoComplete = (0, react_1.forwardRef)(function (_a, ref) {
137
139
  var spaceAbove = inputRect.top + window.scrollY;
138
140
  var dropdownHeight = 275; // Assume a fixed height or calculate based on content
139
141
  if (spaceBelow >= dropdownHeight) {
140
- dropdownPosition.top =
142
+ dropdownPosition_1.top =
141
143
  inputRect.top + window.scrollY + inputRect.height;
142
144
  }
143
145
  else {
@@ -146,15 +148,22 @@ var ExpandableAutoComplete = (0, react_1.forwardRef)(function (_a, ref) {
146
148
  ((filteredData === null || filteredData === void 0 ? void 0 : filteredData.length) > 0 && enableSelectAll && isMultiple
147
149
  ? 32
148
150
  : 0);
149
- dropdownPosition.top =
151
+ dropdownPosition_1.top =
150
152
  inputRect.top + window.scrollY - dropdownHeight + 73;
151
153
  }
152
- setDropdownStyle(__assign({}, dropdownPosition));
154
+ setDropdownStyle(function (prev) {
155
+ if (prev.top === dropdownPosition_1.top &&
156
+ prev.left === dropdownPosition_1.left &&
157
+ prev.width === dropdownPosition_1.width) {
158
+ return prev;
159
+ }
160
+ return dropdownPosition_1;
161
+ });
153
162
  }
154
163
  };
155
- var _10 = (0, autosuggestions_1.useSuggestions)(getData, data, dropOpen, async, paginationEnabled, initialLoad, inputValue, isMultiple, setNextPage, selectedItems, typeOnlyFetch
164
+ var _11 = (0, autosuggestions_1.useSuggestions)(getData, data, dropOpen, async, paginationEnabled, initialLoad, inputValue, isMultiple, setNextPage, selectedItems, typeOnlyFetch
156
165
  // nextBlock
157
- ), suggestions = _10.suggestions, isLoading = _10.isLoading, handlePickSuggestions = _10.handlePickSuggestions;
166
+ ), suggestions = _11.suggestions, isLoading = _11.isLoading, handlePickSuggestions = _11.handlePickSuggestions;
158
167
  // Handling the selection of a suggestion
159
168
  var handleSuggestionClick = (0, react_1.useCallback)(function (suggestion, idx) {
160
169
  if (isMultiple) {
@@ -314,15 +323,35 @@ var ExpandableAutoComplete = (0, react_1.forwardRef)(function (_a, ref) {
314
323
  };
315
324
  }, []);
316
325
  // Filtering suggestions based on type and search value
317
- var selected = isMultiple ? selectedItems : inputValue;
318
- var filteredData = (0, filterSuggestions_1.filterSuggestions)(suggestions, searchValue, type, desc, selected, async, isTreeDropdown, true, matchFromStart);
326
+ var selected = (0, react_1.useMemo)(function () { return (isMultiple ? selectedItems : inputValue); }, [isMultiple, selectedItems, inputValue]);
327
+ var filteredData = (0, react_1.useMemo)(function () {
328
+ return (0, filterSuggestions_1.filterSuggestions)(suggestions, searchValue, type, desc, selected, async, isTreeDropdown, true, matchFromStart);
329
+ }, [
330
+ suggestions,
331
+ searchValue,
332
+ type,
333
+ desc,
334
+ selected,
335
+ async,
336
+ isTreeDropdown,
337
+ matchFromStart,
338
+ ]);
319
339
  (0, react_1.useEffect)(function () {
340
+ if (!dropOpen) {
341
+ return;
342
+ }
320
343
  window.addEventListener('resize', adjustDropdownPosition);
321
344
  adjustDropdownPosition();
322
345
  return function () {
323
346
  window.removeEventListener('resize', adjustDropdownPosition);
324
347
  };
325
- }, [dropOpen, selectedItems, filteredData]);
348
+ }, [
349
+ dropOpen,
350
+ selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length,
351
+ filteredData === null || filteredData === void 0 ? void 0 : filteredData.length,
352
+ enableSelectAll,
353
+ isMultiple,
354
+ ]);
326
355
  (0, react_1.useEffect)(function () {
327
356
  // Handle keyboard navigation
328
357
  var handleKeyDown = function (e) {
@@ -474,26 +503,52 @@ var ExpandableAutoComplete = (0, react_1.forwardRef)(function (_a, ref) {
474
503
  });
475
504
  setSelectAll(allSelected);
476
505
  }, [filteredData, selectedItems, descId]);
477
- var isExpandableSingleLineRef = (0, react_1.useRef)(true);
478
- (0, react_1.useEffect)(function () {
506
+ // Track previous values to prevent unnecessary checks
507
+ var prevSelectedItemsLengthRef = (0, react_1.useRef)((_b = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) !== null && _b !== void 0 ? _b : 0);
508
+ var prevSearchValueRef = (0, react_1.useRef)(searchValue);
509
+ var prevExpandableRef = (0, react_1.useRef)(expandable);
510
+ // Check single line status only when content actually changes
511
+ (0, react_1.useLayoutEffect)(function () {
512
+ var _a;
479
513
  var el = expandableContainerRef.current;
480
- if (!el || !expandable)
514
+ var currentLength = (_a = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) !== null && _a !== void 0 ? _a : 0;
515
+ // Only check if dependencies actually changed
516
+ var lengthChanged = prevSelectedItemsLengthRef.current !== currentLength;
517
+ var searchChanged = prevSearchValueRef.current !== searchValue;
518
+ var expandableChanged = prevExpandableRef.current !== expandable;
519
+ if (!lengthChanged && !searchChanged && !expandableChanged) {
520
+ return; // Skip if nothing changed
521
+ }
522
+ // Update refs
523
+ prevSelectedItemsLengthRef.current = currentLength;
524
+ prevSearchValueRef.current = searchValue;
525
+ prevExpandableRef.current = expandable;
526
+ if (!el || !expandable) {
527
+ if (isExpandableSingleLineRef.current !== true) {
528
+ isExpandableSingleLineRef.current = true;
529
+ setIsExpandableSingleLine(true);
530
+ }
481
531
  return;
482
- var checkSingleLine = function () {
483
- var lineHeight = parseInt(getComputedStyle(el).lineHeight || '20', 10) || 20;
484
- var padding = 5 * 2;
485
- var singleLineMax = lineHeight + padding + 4;
486
- var isSingle = el.scrollHeight <= singleLineMax;
532
+ }
533
+ // Use requestAnimationFrame to check after DOM updates
534
+ requestAnimationFrame(function () {
535
+ if (!el)
536
+ return;
537
+ var computedStyle = getComputedStyle(el);
538
+ var paddingTop = parseFloat(computedStyle.paddingTop) || 5;
539
+ var paddingBottom = parseFloat(computedStyle.paddingBottom) || 5;
540
+ var borderTop = parseFloat(computedStyle.borderTopWidth) || 0;
541
+ var borderBottom = parseFloat(computedStyle.borderBottomWidth) || 0;
542
+ var lineHeight = parseFloat(computedStyle.lineHeight) || 20;
543
+ var singleLineThreshold = paddingTop + paddingBottom + borderTop + borderBottom + lineHeight + 10;
544
+ var isSingle = el.scrollHeight <= singleLineThreshold;
545
+ // Only update if value changed
487
546
  if (isExpandableSingleLineRef.current !== isSingle) {
488
547
  isExpandableSingleLineRef.current = isSingle;
489
548
  setIsExpandableSingleLine(isSingle);
490
549
  }
491
- };
492
- checkSingleLine();
493
- var observer = new ResizeObserver(checkSingleLine);
494
- observer.observe(el);
495
- return function () { return observer.disconnect(); };
496
- }, [expandable, selectedItems, searchValue]);
550
+ });
551
+ }, [expandable, selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length, searchValue]);
497
552
  return ((0, jsx_runtime_1.jsxs)("div", __assign({ id: id ? "expandable-container-".concat(id) : "expandable-container-".concat(name), className: fullWidth ? 'fullWidth' : 'autoWidth', ref: dropdownRef }, { children: [label && ((0, jsx_runtime_1.jsxs)("div", __assign({ style: {
498
553
  marginBottom: 5,
499
554
  display: 'flex',
@@ -1 +1 @@
1
- {"version":3,"file":"ExpandableAutoComplete.js","sourceRoot":"","sources":["../src/ExpandableAutoComplete.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExpandableAutoComplete.js","sourceRoot":"","sources":["../src/ExpandableAutoComplete.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-core-ts",
3
- "version": "2.1.9",
3
+ "version": "2.1.10",
4
4
  "description": "React Components",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -3,6 +3,8 @@ import React, {
3
3
  useCallback,
4
4
  useEffect,
5
5
  useImperativeHandle,
6
+ useLayoutEffect,
7
+ useMemo,
6
8
  useRef,
7
9
  useState,
8
10
  } from 'react';
@@ -73,6 +75,7 @@ const ExpandableAutoComplete = forwardRef<
73
75
  ) => {
74
76
  const dropdownRef = useRef<HTMLDivElement>(null);
75
77
  const expandableContainerRef = useRef<HTMLDivElement>(null);
78
+ const isExpandableSingleLineRef = useRef(true);
76
79
  const [isExpandableSingleLine, setIsExpandableSingleLine] = useState(true);
77
80
  // State Hooks Section
78
81
  const [isInitialRender, setIsInitialRender] = useState(true);
@@ -126,8 +129,15 @@ const ExpandableAutoComplete = forwardRef<
126
129
  inputRect.top + window.scrollY - dropdownHeight + 73;
127
130
  }
128
131
 
129
- setDropdownStyle({
130
- ...dropdownPosition,
132
+ setDropdownStyle((prev) => {
133
+ if (
134
+ prev.top === dropdownPosition.top &&
135
+ prev.left === dropdownPosition.left &&
136
+ prev.width === dropdownPosition.width
137
+ ) {
138
+ return prev;
139
+ }
140
+ return dropdownPosition;
131
141
  });
132
142
  }
133
143
  };
@@ -322,8 +332,23 @@ const ExpandableAutoComplete = forwardRef<
322
332
  }, []);
323
333
 
324
334
  // Filtering suggestions based on type and search value
325
- const selected: any = isMultiple ? selectedItems : inputValue;
326
- const filteredData: ValueProps[] = filterSuggestions(
335
+ const selected: any = useMemo(
336
+ () => (isMultiple ? selectedItems : inputValue),
337
+ [isMultiple, selectedItems, inputValue]
338
+ );
339
+ const filteredData: ValueProps[] = useMemo(() => {
340
+ return filterSuggestions(
341
+ suggestions,
342
+ searchValue,
343
+ type,
344
+ desc,
345
+ selected,
346
+ async,
347
+ isTreeDropdown,
348
+ true,
349
+ matchFromStart
350
+ );
351
+ }, [
327
352
  suggestions,
328
353
  searchValue,
329
354
  type,
@@ -331,18 +356,26 @@ const ExpandableAutoComplete = forwardRef<
331
356
  selected,
332
357
  async,
333
358
  isTreeDropdown,
334
- true,
335
- matchFromStart
336
- );
359
+ matchFromStart,
360
+ ]);
337
361
 
338
362
  useEffect(() => {
363
+ if (!dropOpen) {
364
+ return;
365
+ }
339
366
  window.addEventListener('resize', adjustDropdownPosition);
340
367
  adjustDropdownPosition();
341
368
 
342
369
  return () => {
343
370
  window.removeEventListener('resize', adjustDropdownPosition);
344
371
  };
345
- }, [dropOpen, selectedItems, filteredData]);
372
+ }, [
373
+ dropOpen,
374
+ selectedItems?.length,
375
+ filteredData?.length,
376
+ enableSelectAll,
377
+ isMultiple,
378
+ ]);
346
379
 
347
380
  useEffect(() => {
348
381
  // Handle keyboard navigation
@@ -517,30 +550,59 @@ const ExpandableAutoComplete = forwardRef<
517
550
  setSelectAll(allSelected);
518
551
  }, [filteredData, selectedItems, descId]);
519
552
 
520
- const isExpandableSingleLineRef = useRef(true);
521
- useEffect(() => {
553
+ // Track previous values to prevent unnecessary checks
554
+ const prevSelectedItemsLengthRef = useRef(selectedItems?.length ?? 0);
555
+ const prevSearchValueRef = useRef(searchValue);
556
+ const prevExpandableRef = useRef(expandable);
557
+
558
+ // Check single line status only when content actually changes
559
+ useLayoutEffect(() => {
522
560
  const el = expandableContainerRef.current;
523
- if (!el || !expandable) return;
524
-
525
- const checkSingleLine = () => {
526
- const lineHeight = parseInt(
527
- getComputedStyle(el).lineHeight || '20',
528
- 10
529
- ) || 20;
530
- const padding = 5 * 2;
531
- const singleLineMax = lineHeight + padding + 4;
532
- const isSingle = el.scrollHeight <= singleLineMax;
561
+ const currentLength = selectedItems?.length ?? 0;
562
+
563
+ // Only check if dependencies actually changed
564
+ const lengthChanged = prevSelectedItemsLengthRef.current !== currentLength;
565
+ const searchChanged = prevSearchValueRef.current !== searchValue;
566
+ const expandableChanged = prevExpandableRef.current !== expandable;
567
+
568
+ if (!lengthChanged && !searchChanged && !expandableChanged) {
569
+ return; // Skip if nothing changed
570
+ }
571
+
572
+ // Update refs
573
+ prevSelectedItemsLengthRef.current = currentLength;
574
+ prevSearchValueRef.current = searchValue;
575
+ prevExpandableRef.current = expandable;
576
+
577
+ if (!el || !expandable) {
578
+ if (isExpandableSingleLineRef.current !== true) {
579
+ isExpandableSingleLineRef.current = true;
580
+ setIsExpandableSingleLine(true);
581
+ }
582
+ return;
583
+ }
584
+
585
+ // Use requestAnimationFrame to check after DOM updates
586
+ requestAnimationFrame(() => {
587
+ if (!el) return;
588
+
589
+ const computedStyle = getComputedStyle(el);
590
+ const paddingTop = parseFloat(computedStyle.paddingTop) || 5;
591
+ const paddingBottom = parseFloat(computedStyle.paddingBottom) || 5;
592
+ const borderTop = parseFloat(computedStyle.borderTopWidth) || 0;
593
+ const borderBottom = parseFloat(computedStyle.borderBottomWidth) || 0;
594
+ const lineHeight = parseFloat(computedStyle.lineHeight) || 20;
595
+
596
+ const singleLineThreshold = paddingTop + paddingBottom + borderTop + borderBottom + lineHeight + 10;
597
+ const isSingle = el.scrollHeight <= singleLineThreshold;
598
+
599
+ // Only update if value changed
533
600
  if (isExpandableSingleLineRef.current !== isSingle) {
534
601
  isExpandableSingleLineRef.current = isSingle;
535
602
  setIsExpandableSingleLine(isSingle);
536
603
  }
537
- };
538
-
539
- checkSingleLine();
540
- const observer = new ResizeObserver(checkSingleLine);
541
- observer.observe(el);
542
- return () => observer.disconnect();
543
- }, [expandable, selectedItems, searchValue]);
604
+ });
605
+ }, [expandable, selectedItems?.length, searchValue]);
544
606
 
545
607
  return (
546
608
  <div