UNPKG

react-base-guide

Version:

react ui components

37 lines 1.38 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const dropdownMenuKeysHandler = ({ e, setOpen, rows }) => { var _a, _b; if (!rows) { return; } if (e.key === "Enter" || e.key === "Escape") { e.preventDefault(); setOpen(false); return; } if (!(e.key === "ArrowUp" || e.key === "ArrowDown")) { return; } if ((rows === null || rows === void 0 ? void 0 : rows.filter(r => r.selected).length) === 0 && e.key === "ArrowUp" || e.key === "ArrowDown") { ((_a = rows[0]) === null || _a === void 0 ? void 0 : _a.onClick) && ((_b = rows[0]) === null || _b === void 0 ? void 0 : _b.onClick(e)); } for (let index = 0; index < rows.length; index++) { let row = rows[index]; if (row.selected) { if (e.key === "ArrowUp") { e.preventDefault(); let prevRow = rows[index - 1] || row; prevRow.onClick && prevRow.onClick(e); } if (e.key === "ArrowDown") { e.preventDefault(); let nextRow = rows[index + 1] || row; nextRow.onClick && nextRow.onClick(e); } break; } } }; exports.default = dropdownMenuKeysHandler; //# sourceMappingURL=dropdown-menu-keys-handler.js.map