text: import { isUrl } from '../utils/utils';
  
  const menuData = [
    {
      name: 'dashboard',
      icon: 'dashboard',
      path: 'dashboard',
      children: [
        {
          name: '分析页',
          path: 'analysis',
        },
        {
          name: '监控页',
          path: 'monitor',
        },
        {
          name: '工作台',
          path: 'workplace',
          // hideInBreadcrumb: true,
          // hideInMenu: true,
        },
      ],
    },
    {
      name: '表单页',
      icon: 'form',
      path: 'form',
      children: [
        {
          name: '基础表单',
          path: 'basic-form',
        },
        {
          name: '分步表单',
          path: 'step-form',
        },
        {
          name: '高级表单',
          authority: 'admin',
          path: 'advanced-form',
        },
      ],
    },
    {
      name: '列表页',
      icon: 'table',
      path: 'list',
      children: [
        {
          name: '查询表格',
          path: 'table-list',
        },
        {
          name: '标准列表',
          path: 'basic-list',
        },
        {
          name: '卡片列表',
          path: 'card-list',
        },
        {
          name: '搜索列表',
          path: 'search',
          children: [
            {
              name: '搜索列表（文章）',
              path: 'articles',
            },
            {
              name: '搜索列表（项目）',
              path: 'projects',
            },
            {
              name: '搜索列表（应用）',
              path: 'applications',
            },
          ],
        },
      ],
    },
    {
      name: '详情页',
      icon: 'profile',
      path: 'profile',
      children: [
        {
          name: '基础详情页',
          path: 'basic',
        },
        {
          name: '高级详情页',
          path: 'advanced',
          authority: 'admin',
        },
      ],
    },
    {
      name: '结果页',
      icon: 'check-circle-o',
      path: 'result',
      children: [
        {
          name: '成功',
          path: 'success',
        },
        {
          name: '失败',
          path: 'fail',
        },
      ],
    },
    {
      name: '异常页',
      icon: 'warning',
      path: 'exception',
      children: [
        {
          name: '403',
          path: '403',
        },
        {
          name: '404',
          path: '404',
        },
        {
          name: '500',
          path: '500',
        },
        {
          name: '触发异常',
          path: 'trigger',
          hideInMenu: true,
        },
      ],
    },
    {
      name: '账户',
      icon: 'user',
      path: 'user',
      authority: 'guest',
      children: [
        {
          name: '登录',
          path: 'login',
        },
        {
          name: '注册',
          path: 'register',
        },
        {
          name: '注册结果',
          path: 'register-result',
        },
      ],
    },
    {
      name: '流程中心',
      icon: 'user',
      path: 'process',
      children: [
        {
          name: '',
          path: 'list',
          children: [
            {
              name: '待办',
              path: 'todo',
            },
            {
              name: '已办',
              path: 'alreadyDo',
            },
            {
              name: '已发',
              path: 'alreadySend',
            },
            {
              name: '草稿',
              path: 'draft',
            },
            {
              name: '流程模板',
              path: 'processModel',
            },
            {
              name: '流程发起',
              path: 'processIndex',
            },
          ],
        },
        {
          name: '',
          path: 'form',
          children: [
            {
              name: '流程发起',
              path: 'launch',
            },
            {
              name: '流程查看',
              path: 'view',
            },
            {
              name: '流程审批',
              path: 'approve',
            },
          ],
        },
      ],
    },
  ];
  
  function formatter(data, parentPath = '/', parentAuthority) {
    return data.map(item => {
      let { path } = item;
      if (!isUrl(path)) {
        path = parentPath + item.path;
      }
      const result = {
        ...item,
        path,
        authority: item.authority || parentAuthority,
      };
      if (item.children) {
        result.children = formatter(item.children, `${parentPath}${item.path}/`, item.authority);
      }
      return result;
    });
  }
  
  export const getMenuData = () => formatter(menuData);
  