UNPKG

@smart-react-components/ui

Version:
34 lines (33 loc) 1.11 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const react_1 = require("react"); const useSelectBoxItemList = ({ children }) => { const collectItems = (arr, children) => { (!Array.isArray(children) ? [children] : children).forEach(item => { if (item) { if (typeof item.props.value !== 'undefined' && item.props.value !== null) { arr.push(item.props); } else if (typeof item.props.children !== 'undefined' && item.props.value !== null) { collectItems(arr, item.props.children); } } }); }; const itemList = (0, react_1.useMemo)(() => { const arr = []; collectItems(arr, children); const itemList = {}; arr.forEach((item, idx) => { itemList[String(item.value)] = { children: item.children, idx, }; }); return itemList; }, [children]); return { itemList, }; }; exports.default = useSelectBoxItemList;