import React, { useState, useMemo, useCallback } from 'react';
import { IconUser, IconStar, IconUserGroup, IconEdit, IconApps, IconSetting } from '@douyinfe/semi-icons';
import { Nav, Button } from '../../../index';
export default function Demo() {
    const [selectedKeys, setSelectedKeys] = useState(['人员管理']);
    const navItems = useMemo(
        () => [
            { itemKey: 'user', text: '用户管理', icon: , link: '#' },
            { itemKey: 'union', text: '公会中心', icon:  },
            {
                itemKey: 'union-management',
                link: '#',
                text: '公会管理',
                icon: ,
                items: ['公告设置', '公会查询', '信息录入'],
            },
            {
                itemKey: 'approve-management',
                text: '审批管理',
                icon: ,
                items: [
                    '入驻审核',
                    {
                        itemKey: 'operation-management',
                        text: '运营管理',
                        items: ['人员管理', '人员变更'],
                    },
                ],
            },
            {
                text: '任务平台',
                icon: ,
                itemKey: 'job',
                items: ['任务管理', '用户任务查询'],
            },
        ],
        []
    );
    const navItemKeys = useMemo(
        () =>
            navItems.reduce((prev, item) => {
                const que = [item];
                while (que.length) {
                    const cur = que.pop();
                    if (cur) {
                        if (typeof cur === 'object') {
                            if (Array.isArray(cur.items) && cur.items.length) {
                                que.push(...cur.items);
                            } else if (cur.itemKey) {
                                prev.push(cur.itemKey);
                            }
                        } else {
                            prev.push(cur);
                        }
                    }
                }
                return prev;
            }, []),
        [navItems]
    );
    const randomSelect = useCallback(() => {
        const randomIndex = Math.floor(Math.random() * navItemKeys.length);
        setSelectedKeys([navItemKeys[randomIndex]]);
    }, [navItemKeys]);
    return (
        
            
            
                
         
    );
}