@mlw-packages/react-components 1.10.27 → 1.10.28
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 +47 -106
- package/dist/index.mjs +47 -106
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -22487,9 +22487,14 @@ function useCommandPalette({
|
|
|
22487
22487
|
const [query, setQuery] = React32__namespace.useState("");
|
|
22488
22488
|
const [activeIndex, setActiveIndex] = React32__namespace.useState(0);
|
|
22489
22489
|
const [page, setPage] = React32__namespace.useState(0);
|
|
22490
|
-
const [selectedItemIds, setSelectedItemIds] = React32__namespace.useState(
|
|
22491
|
-
|
|
22492
|
-
|
|
22490
|
+
const [selectedItemIds, setSelectedItemIds] = React32__namespace.useState(/* @__PURE__ */ new Set());
|
|
22491
|
+
const stateRef = React32.useRef({
|
|
22492
|
+
activeIndex,
|
|
22493
|
+
page,
|
|
22494
|
+
flatItems: [],
|
|
22495
|
+
query,
|
|
22496
|
+
selectedItems: []
|
|
22497
|
+
});
|
|
22493
22498
|
const toggleSelection = React32.useCallback((id) => {
|
|
22494
22499
|
setSelectedItemIds((prev) => {
|
|
22495
22500
|
const next = new Set(prev);
|
|
@@ -22499,10 +22504,7 @@ function useCommandPalette({
|
|
|
22499
22504
|
});
|
|
22500
22505
|
}, []);
|
|
22501
22506
|
const clearSelection = React32.useCallback(() => setSelectedItemIds(/* @__PURE__ */ new Set()), []);
|
|
22502
|
-
const baseGroups = React32.useMemo(
|
|
22503
|
-
() => normaliseGroups(items, groups),
|
|
22504
|
-
[items, groups]
|
|
22505
|
-
);
|
|
22507
|
+
const baseGroups = React32.useMemo(() => normaliseGroups(items, groups), [items, groups]);
|
|
22506
22508
|
React32.useEffect(() => {
|
|
22507
22509
|
if (open) {
|
|
22508
22510
|
setQuery("");
|
|
@@ -22518,29 +22520,11 @@ function useCommandPalette({
|
|
|
22518
22520
|
}, [query, multiSearch]);
|
|
22519
22521
|
const allMatchedGroups = React32.useMemo(() => {
|
|
22520
22522
|
if (!query.trim()) {
|
|
22521
|
-
|
|
22522
|
-
return [
|
|
22523
|
-
{
|
|
22524
|
-
id: "__recent__",
|
|
22525
|
-
label: "Recent",
|
|
22526
|
-
icon: React32__namespace.createElement(react.ClockCounterClockwiseIcon),
|
|
22527
|
-
items: recentItems,
|
|
22528
|
-
priority: 999
|
|
22529
|
-
},
|
|
22530
|
-
...baseGroups
|
|
22531
|
-
];
|
|
22532
|
-
}
|
|
22533
|
-
return baseGroups;
|
|
22534
|
-
}
|
|
22535
|
-
if (searchTerms.length > 1 || multiSearch && searchTerms.length > 0) {
|
|
22536
|
-
return unionGroups(baseGroups, searchTerms);
|
|
22523
|
+
return recentItems.length > 0 ? [{ id: "__recent__", label: "Recent", icon: React32__namespace.createElement(react.ClockCounterClockwiseIcon), items: recentItems, priority: 999 }, ...baseGroups] : baseGroups;
|
|
22537
22524
|
}
|
|
22538
|
-
return filterAndScore(baseGroups, query);
|
|
22525
|
+
return searchTerms.length > 1 || multiSearch && searchTerms.length > 0 ? unionGroups(baseGroups, searchTerms) : filterAndScore(baseGroups, query);
|
|
22539
22526
|
}, [query, baseGroups, recentItems, multiSearch, searchTerms]);
|
|
22540
|
-
const allFlatItems = React32.useMemo(
|
|
22541
|
-
() => allMatchedGroups.flatMap((g) => g.items),
|
|
22542
|
-
[allMatchedGroups]
|
|
22543
|
-
);
|
|
22527
|
+
const allFlatItems = React32.useMemo(() => allMatchedGroups.flatMap((g) => g.items), [allMatchedGroups]);
|
|
22544
22528
|
const totalItems = allFlatItems.length;
|
|
22545
22529
|
const totalPages = Math.max(1, Math.ceil(totalItems / PAGE_SIZE));
|
|
22546
22530
|
React32.useEffect(() => {
|
|
@@ -22562,115 +22546,72 @@ function useCommandPalette({
|
|
|
22562
22546
|
count++;
|
|
22563
22547
|
if (count >= end) break;
|
|
22564
22548
|
}
|
|
22565
|
-
if (slicedItems.length > 0) {
|
|
22566
|
-
result.push({ ...group, items: slicedItems });
|
|
22567
|
-
}
|
|
22549
|
+
if (slicedItems.length > 0) result.push({ ...group, items: slicedItems });
|
|
22568
22550
|
if (count >= end) break;
|
|
22569
22551
|
}
|
|
22570
22552
|
return result;
|
|
22571
22553
|
}, [allMatchedGroups, page]);
|
|
22572
|
-
const flatItems = React32.useMemo(
|
|
22573
|
-
|
|
22574
|
-
[displayedGroups]
|
|
22575
|
-
);
|
|
22576
|
-
const selectedItems = React32.useMemo(
|
|
22577
|
-
() => allFlatItems.filter((i) => selectedItemIds.has(i.id)),
|
|
22578
|
-
[allFlatItems, selectedItemIds]
|
|
22579
|
-
);
|
|
22580
|
-
const pageItemCount = flatItems.length;
|
|
22554
|
+
const flatItems = React32.useMemo(() => displayedGroups.flatMap((g) => g.items), [displayedGroups]);
|
|
22555
|
+
const selectedItems = React32.useMemo(() => allFlatItems.filter((i) => selectedItemIds.has(i.id)), [allFlatItems, selectedItemIds]);
|
|
22581
22556
|
React32.useEffect(() => {
|
|
22582
|
-
|
|
22583
|
-
}, [
|
|
22557
|
+
stateRef.current = { activeIndex, page, flatItems, query, selectedItems };
|
|
22558
|
+
}, [activeIndex, page, flatItems, query, selectedItems]);
|
|
22584
22559
|
const executeBulkAction = React32.useCallback(() => {
|
|
22585
22560
|
if (!onSelectMultiple || selectedItems.length === 0) return;
|
|
22586
22561
|
onSelectMultiple(selectedItems);
|
|
22587
22562
|
onOpenChange?.(false);
|
|
22588
22563
|
}, [onSelectMultiple, selectedItems, onOpenChange]);
|
|
22589
|
-
const handleSelect = React32.useCallback(
|
|
22590
|
-
(item
|
|
22591
|
-
|
|
22592
|
-
|
|
22593
|
-
|
|
22594
|
-
|
|
22595
|
-
|
|
22596
|
-
return;
|
|
22597
|
-
}
|
|
22598
|
-
if (selectedItems.length > 0) {
|
|
22599
|
-
const finalItems = selectedItemIds.has(item.id) ? selectedItems : [...selectedItems, item];
|
|
22600
|
-
onSelectMultiple?.(finalItems);
|
|
22601
|
-
onOpenChange?.(false);
|
|
22602
|
-
return;
|
|
22603
|
-
}
|
|
22564
|
+
const handleSelect = React32.useCallback((item, event) => {
|
|
22565
|
+
if (!item) return;
|
|
22566
|
+
if (multiSelect) {
|
|
22567
|
+
const isCmdKey = event && ("ctrlKey" in event || "metaKey" in event || "shiftKey" in event) && (event.ctrlKey || event.metaKey || event.shiftKey);
|
|
22568
|
+
if (isCmdKey) {
|
|
22569
|
+
toggleSelection(item.id);
|
|
22570
|
+
return;
|
|
22604
22571
|
}
|
|
22605
|
-
|
|
22606
|
-
|
|
22607
|
-
|
|
22608
|
-
|
|
22609
|
-
|
|
22610
|
-
...recentItems.filter((r) => r.id !== item.id)
|
|
22611
|
-
].slice(0, maxRecentItems);
|
|
22612
|
-
onRecentItemsChange(next);
|
|
22572
|
+
if (selectedItems.length > 0) {
|
|
22573
|
+
const finalItems = selectedItemIds.has(item.id) ? selectedItems : [...selectedItems, item];
|
|
22574
|
+
onSelectMultiple?.(finalItems);
|
|
22575
|
+
onOpenChange?.(false);
|
|
22576
|
+
return;
|
|
22613
22577
|
}
|
|
22614
|
-
}
|
|
22615
|
-
|
|
22616
|
-
|
|
22617
|
-
|
|
22618
|
-
|
|
22619
|
-
|
|
22620
|
-
|
|
22621
|
-
|
|
22622
|
-
recentItems,
|
|
22623
|
-
maxRecentItems,
|
|
22624
|
-
toggleSelection
|
|
22625
|
-
]
|
|
22626
|
-
);
|
|
22578
|
+
}
|
|
22579
|
+
item.onSelect();
|
|
22580
|
+
onOpenChange?.(false);
|
|
22581
|
+
if (onRecentItemsChange) {
|
|
22582
|
+
const next = [item, ...recentItems.filter((r) => r.id !== item.id)].slice(0, maxRecentItems);
|
|
22583
|
+
onRecentItemsChange(next);
|
|
22584
|
+
}
|
|
22585
|
+
}, [multiSelect, selectedItems, selectedItemIds, onSelectMultiple, onOpenChange, onRecentItemsChange, recentItems, maxRecentItems, toggleSelection]);
|
|
22627
22586
|
React32.useEffect(() => {
|
|
22628
22587
|
if (!open) return;
|
|
22629
22588
|
const handler = (e) => {
|
|
22589
|
+
const { activeIndex: curIdx, flatItems: curItems, query: curQuery, selectedItems: curSelected } = stateRef.current;
|
|
22630
22590
|
if (e.key === "ArrowDown") {
|
|
22631
22591
|
e.preventDefault();
|
|
22632
|
-
if (
|
|
22633
|
-
|
|
22634
|
-
} else {
|
|
22635
|
-
setActiveIndex((i) => (i + 1) % Math.max(pageItemCount, 1));
|
|
22636
|
-
}
|
|
22592
|
+
if (curIdx === curItems.length - 1 && page < totalPages - 1) setPage((p) => p + 1);
|
|
22593
|
+
else setActiveIndex((i) => (i + 1) % Math.max(curItems.length, 1));
|
|
22637
22594
|
} else if (e.key === "ArrowUp") {
|
|
22638
22595
|
e.preventDefault();
|
|
22639
|
-
if (
|
|
22596
|
+
if (curIdx === 0 && page > 0) {
|
|
22640
22597
|
setPage((p) => p - 1);
|
|
22641
22598
|
setActiveIndex(PAGE_SIZE - 1);
|
|
22642
|
-
} else
|
|
22643
|
-
setActiveIndex(
|
|
22644
|
-
(i) => (i - 1 + Math.max(pageItemCount, 1)) % Math.max(pageItemCount, 1)
|
|
22645
|
-
);
|
|
22646
|
-
}
|
|
22599
|
+
} else setActiveIndex((i) => (i - 1 + Math.max(curItems.length, 1)) % Math.max(curItems.length, 1));
|
|
22647
22600
|
} else if (e.key === "Enter") {
|
|
22648
22601
|
e.preventDefault();
|
|
22649
|
-
if (multiSearch &&
|
|
22602
|
+
if (multiSearch && curQuery.includes(",") && curSelected.length === 0) {
|
|
22650
22603
|
return;
|
|
22651
22604
|
}
|
|
22652
22605
|
if (multiSelect && (e.ctrlKey || e.metaKey)) {
|
|
22653
22606
|
executeBulkAction();
|
|
22654
22607
|
return;
|
|
22655
22608
|
}
|
|
22656
|
-
handleSelect(
|
|
22609
|
+
handleSelect(curItems[curIdx], e);
|
|
22657
22610
|
}
|
|
22658
22611
|
};
|
|
22659
|
-
|
|
22660
|
-
return () =>
|
|
22661
|
-
}, [
|
|
22662
|
-
open,
|
|
22663
|
-
flatItems,
|
|
22664
|
-
activeIndex,
|
|
22665
|
-
pageItemCount,
|
|
22666
|
-
page,
|
|
22667
|
-
totalPages,
|
|
22668
|
-
query,
|
|
22669
|
-
multiSearch,
|
|
22670
|
-
multiSelect,
|
|
22671
|
-
executeBulkAction,
|
|
22672
|
-
handleSelect
|
|
22673
|
-
]);
|
|
22612
|
+
window.addEventListener("keydown", handler);
|
|
22613
|
+
return () => window.removeEventListener("keydown", handler);
|
|
22614
|
+
}, [open, page, totalPages, multiSearch, multiSelect, handleSelect, executeBulkAction]);
|
|
22674
22615
|
return {
|
|
22675
22616
|
query,
|
|
22676
22617
|
setQuery,
|
package/dist/index.mjs
CHANGED
|
@@ -22445,9 +22445,14 @@ function useCommandPalette({
|
|
|
22445
22445
|
const [query, setQuery] = React32.useState("");
|
|
22446
22446
|
const [activeIndex, setActiveIndex] = React32.useState(0);
|
|
22447
22447
|
const [page, setPage] = React32.useState(0);
|
|
22448
|
-
const [selectedItemIds, setSelectedItemIds] = React32.useState(
|
|
22449
|
-
|
|
22450
|
-
|
|
22448
|
+
const [selectedItemIds, setSelectedItemIds] = React32.useState(/* @__PURE__ */ new Set());
|
|
22449
|
+
const stateRef = useRef({
|
|
22450
|
+
activeIndex,
|
|
22451
|
+
page,
|
|
22452
|
+
flatItems: [],
|
|
22453
|
+
query,
|
|
22454
|
+
selectedItems: []
|
|
22455
|
+
});
|
|
22451
22456
|
const toggleSelection = useCallback((id) => {
|
|
22452
22457
|
setSelectedItemIds((prev) => {
|
|
22453
22458
|
const next = new Set(prev);
|
|
@@ -22457,10 +22462,7 @@ function useCommandPalette({
|
|
|
22457
22462
|
});
|
|
22458
22463
|
}, []);
|
|
22459
22464
|
const clearSelection = useCallback(() => setSelectedItemIds(/* @__PURE__ */ new Set()), []);
|
|
22460
|
-
const baseGroups = useMemo(
|
|
22461
|
-
() => normaliseGroups(items, groups),
|
|
22462
|
-
[items, groups]
|
|
22463
|
-
);
|
|
22465
|
+
const baseGroups = useMemo(() => normaliseGroups(items, groups), [items, groups]);
|
|
22464
22466
|
useEffect(() => {
|
|
22465
22467
|
if (open) {
|
|
22466
22468
|
setQuery("");
|
|
@@ -22476,29 +22478,11 @@ function useCommandPalette({
|
|
|
22476
22478
|
}, [query, multiSearch]);
|
|
22477
22479
|
const allMatchedGroups = useMemo(() => {
|
|
22478
22480
|
if (!query.trim()) {
|
|
22479
|
-
|
|
22480
|
-
return [
|
|
22481
|
-
{
|
|
22482
|
-
id: "__recent__",
|
|
22483
|
-
label: "Recent",
|
|
22484
|
-
icon: React32.createElement(ClockCounterClockwiseIcon),
|
|
22485
|
-
items: recentItems,
|
|
22486
|
-
priority: 999
|
|
22487
|
-
},
|
|
22488
|
-
...baseGroups
|
|
22489
|
-
];
|
|
22490
|
-
}
|
|
22491
|
-
return baseGroups;
|
|
22492
|
-
}
|
|
22493
|
-
if (searchTerms.length > 1 || multiSearch && searchTerms.length > 0) {
|
|
22494
|
-
return unionGroups(baseGroups, searchTerms);
|
|
22481
|
+
return recentItems.length > 0 ? [{ id: "__recent__", label: "Recent", icon: React32.createElement(ClockCounterClockwiseIcon), items: recentItems, priority: 999 }, ...baseGroups] : baseGroups;
|
|
22495
22482
|
}
|
|
22496
|
-
return filterAndScore(baseGroups, query);
|
|
22483
|
+
return searchTerms.length > 1 || multiSearch && searchTerms.length > 0 ? unionGroups(baseGroups, searchTerms) : filterAndScore(baseGroups, query);
|
|
22497
22484
|
}, [query, baseGroups, recentItems, multiSearch, searchTerms]);
|
|
22498
|
-
const allFlatItems = useMemo(
|
|
22499
|
-
() => allMatchedGroups.flatMap((g) => g.items),
|
|
22500
|
-
[allMatchedGroups]
|
|
22501
|
-
);
|
|
22485
|
+
const allFlatItems = useMemo(() => allMatchedGroups.flatMap((g) => g.items), [allMatchedGroups]);
|
|
22502
22486
|
const totalItems = allFlatItems.length;
|
|
22503
22487
|
const totalPages = Math.max(1, Math.ceil(totalItems / PAGE_SIZE));
|
|
22504
22488
|
useEffect(() => {
|
|
@@ -22520,115 +22504,72 @@ function useCommandPalette({
|
|
|
22520
22504
|
count++;
|
|
22521
22505
|
if (count >= end) break;
|
|
22522
22506
|
}
|
|
22523
|
-
if (slicedItems.length > 0) {
|
|
22524
|
-
result.push({ ...group, items: slicedItems });
|
|
22525
|
-
}
|
|
22507
|
+
if (slicedItems.length > 0) result.push({ ...group, items: slicedItems });
|
|
22526
22508
|
if (count >= end) break;
|
|
22527
22509
|
}
|
|
22528
22510
|
return result;
|
|
22529
22511
|
}, [allMatchedGroups, page]);
|
|
22530
|
-
const flatItems = useMemo(
|
|
22531
|
-
|
|
22532
|
-
[displayedGroups]
|
|
22533
|
-
);
|
|
22534
|
-
const selectedItems = useMemo(
|
|
22535
|
-
() => allFlatItems.filter((i) => selectedItemIds.has(i.id)),
|
|
22536
|
-
[allFlatItems, selectedItemIds]
|
|
22537
|
-
);
|
|
22538
|
-
const pageItemCount = flatItems.length;
|
|
22512
|
+
const flatItems = useMemo(() => displayedGroups.flatMap((g) => g.items), [displayedGroups]);
|
|
22513
|
+
const selectedItems = useMemo(() => allFlatItems.filter((i) => selectedItemIds.has(i.id)), [allFlatItems, selectedItemIds]);
|
|
22539
22514
|
useEffect(() => {
|
|
22540
|
-
|
|
22541
|
-
}, [
|
|
22515
|
+
stateRef.current = { activeIndex, page, flatItems, query, selectedItems };
|
|
22516
|
+
}, [activeIndex, page, flatItems, query, selectedItems]);
|
|
22542
22517
|
const executeBulkAction = useCallback(() => {
|
|
22543
22518
|
if (!onSelectMultiple || selectedItems.length === 0) return;
|
|
22544
22519
|
onSelectMultiple(selectedItems);
|
|
22545
22520
|
onOpenChange?.(false);
|
|
22546
22521
|
}, [onSelectMultiple, selectedItems, onOpenChange]);
|
|
22547
|
-
const handleSelect = useCallback(
|
|
22548
|
-
(item
|
|
22549
|
-
|
|
22550
|
-
|
|
22551
|
-
|
|
22552
|
-
|
|
22553
|
-
|
|
22554
|
-
return;
|
|
22555
|
-
}
|
|
22556
|
-
if (selectedItems.length > 0) {
|
|
22557
|
-
const finalItems = selectedItemIds.has(item.id) ? selectedItems : [...selectedItems, item];
|
|
22558
|
-
onSelectMultiple?.(finalItems);
|
|
22559
|
-
onOpenChange?.(false);
|
|
22560
|
-
return;
|
|
22561
|
-
}
|
|
22522
|
+
const handleSelect = useCallback((item, event) => {
|
|
22523
|
+
if (!item) return;
|
|
22524
|
+
if (multiSelect) {
|
|
22525
|
+
const isCmdKey = event && ("ctrlKey" in event || "metaKey" in event || "shiftKey" in event) && (event.ctrlKey || event.metaKey || event.shiftKey);
|
|
22526
|
+
if (isCmdKey) {
|
|
22527
|
+
toggleSelection(item.id);
|
|
22528
|
+
return;
|
|
22562
22529
|
}
|
|
22563
|
-
|
|
22564
|
-
|
|
22565
|
-
|
|
22566
|
-
|
|
22567
|
-
|
|
22568
|
-
...recentItems.filter((r) => r.id !== item.id)
|
|
22569
|
-
].slice(0, maxRecentItems);
|
|
22570
|
-
onRecentItemsChange(next);
|
|
22530
|
+
if (selectedItems.length > 0) {
|
|
22531
|
+
const finalItems = selectedItemIds.has(item.id) ? selectedItems : [...selectedItems, item];
|
|
22532
|
+
onSelectMultiple?.(finalItems);
|
|
22533
|
+
onOpenChange?.(false);
|
|
22534
|
+
return;
|
|
22571
22535
|
}
|
|
22572
|
-
}
|
|
22573
|
-
|
|
22574
|
-
|
|
22575
|
-
|
|
22576
|
-
|
|
22577
|
-
|
|
22578
|
-
|
|
22579
|
-
|
|
22580
|
-
recentItems,
|
|
22581
|
-
maxRecentItems,
|
|
22582
|
-
toggleSelection
|
|
22583
|
-
]
|
|
22584
|
-
);
|
|
22536
|
+
}
|
|
22537
|
+
item.onSelect();
|
|
22538
|
+
onOpenChange?.(false);
|
|
22539
|
+
if (onRecentItemsChange) {
|
|
22540
|
+
const next = [item, ...recentItems.filter((r) => r.id !== item.id)].slice(0, maxRecentItems);
|
|
22541
|
+
onRecentItemsChange(next);
|
|
22542
|
+
}
|
|
22543
|
+
}, [multiSelect, selectedItems, selectedItemIds, onSelectMultiple, onOpenChange, onRecentItemsChange, recentItems, maxRecentItems, toggleSelection]);
|
|
22585
22544
|
useEffect(() => {
|
|
22586
22545
|
if (!open) return;
|
|
22587
22546
|
const handler = (e) => {
|
|
22547
|
+
const { activeIndex: curIdx, flatItems: curItems, query: curQuery, selectedItems: curSelected } = stateRef.current;
|
|
22588
22548
|
if (e.key === "ArrowDown") {
|
|
22589
22549
|
e.preventDefault();
|
|
22590
|
-
if (
|
|
22591
|
-
|
|
22592
|
-
} else {
|
|
22593
|
-
setActiveIndex((i) => (i + 1) % Math.max(pageItemCount, 1));
|
|
22594
|
-
}
|
|
22550
|
+
if (curIdx === curItems.length - 1 && page < totalPages - 1) setPage((p) => p + 1);
|
|
22551
|
+
else setActiveIndex((i) => (i + 1) % Math.max(curItems.length, 1));
|
|
22595
22552
|
} else if (e.key === "ArrowUp") {
|
|
22596
22553
|
e.preventDefault();
|
|
22597
|
-
if (
|
|
22554
|
+
if (curIdx === 0 && page > 0) {
|
|
22598
22555
|
setPage((p) => p - 1);
|
|
22599
22556
|
setActiveIndex(PAGE_SIZE - 1);
|
|
22600
|
-
} else
|
|
22601
|
-
setActiveIndex(
|
|
22602
|
-
(i) => (i - 1 + Math.max(pageItemCount, 1)) % Math.max(pageItemCount, 1)
|
|
22603
|
-
);
|
|
22604
|
-
}
|
|
22557
|
+
} else setActiveIndex((i) => (i - 1 + Math.max(curItems.length, 1)) % Math.max(curItems.length, 1));
|
|
22605
22558
|
} else if (e.key === "Enter") {
|
|
22606
22559
|
e.preventDefault();
|
|
22607
|
-
if (multiSearch &&
|
|
22560
|
+
if (multiSearch && curQuery.includes(",") && curSelected.length === 0) {
|
|
22608
22561
|
return;
|
|
22609
22562
|
}
|
|
22610
22563
|
if (multiSelect && (e.ctrlKey || e.metaKey)) {
|
|
22611
22564
|
executeBulkAction();
|
|
22612
22565
|
return;
|
|
22613
22566
|
}
|
|
22614
|
-
handleSelect(
|
|
22567
|
+
handleSelect(curItems[curIdx], e);
|
|
22615
22568
|
}
|
|
22616
22569
|
};
|
|
22617
|
-
|
|
22618
|
-
return () =>
|
|
22619
|
-
}, [
|
|
22620
|
-
open,
|
|
22621
|
-
flatItems,
|
|
22622
|
-
activeIndex,
|
|
22623
|
-
pageItemCount,
|
|
22624
|
-
page,
|
|
22625
|
-
totalPages,
|
|
22626
|
-
query,
|
|
22627
|
-
multiSearch,
|
|
22628
|
-
multiSelect,
|
|
22629
|
-
executeBulkAction,
|
|
22630
|
-
handleSelect
|
|
22631
|
-
]);
|
|
22570
|
+
window.addEventListener("keydown", handler);
|
|
22571
|
+
return () => window.removeEventListener("keydown", handler);
|
|
22572
|
+
}, [open, page, totalPages, multiSearch, multiSelect, handleSelect, executeBulkAction]);
|
|
22632
22573
|
return {
|
|
22633
22574
|
query,
|
|
22634
22575
|
setQuery,
|