tachybase_todo/packages/plugin-full-collections/src/collections/menus.ts
chenos 6c39ac3538
Develop (#68)
* refactor: fields/views/pages...

* update

* update

* update

* updates

* updates

* add yarn.lock

* updates

* updates

* updates

* updates

* updates

* updates

* updates

* updates

* updates

* developerMode

* 一大波更新

* bugfix

* fix: hide the sorting settings

* fix: reload menu when menu is updated

* 页面重构

* modify text

* 补充细节

* system settings

* 继续更新补充

* fix: 多级菜单支持

* 无限嵌套

* fix: icon

* 省市区参数调整

* 表单描述、文案调整

* 支持草稿

* 邮箱登录

* 细节补充

* 菜单页面权限初步

* 详情页打开方式

* 菜单父级、草稿问题

* 描述文字

* 详情分组显示

* 状态改为 radio

* 菜单权限

* 跳过省市区 api

* 修复权限数据范围

* onDraft

* 页面跳转

* 修改文案

* 注册、登录

* fix: 权限过滤问题

* 微调上传组件样式

* 0.4.0-alpha.0

* father-build

* remove father-build

* 细节调整
2021-03-16 14:31:54 +08:00

85 lines
1.7 KiB
TypeScript

import { TableOptions } from '@nocobase/database';
export default {
name: 'menus',
title: '菜单配置',
internal: true,
// model: 'CollectionModel',
developerMode: true,
createdAt: false,
updatedAt: false,
fields: [
{
interface: 'string',
type: 'string',
name: 'title',
title: '菜单名称',
required: true,
},
{
interface: 'icon',
type: 'string',
name: 'icon',
title: '图标',
component: {
type: 'icon',
},
},
{
interface: 'radio',
type: 'string',
name: 'type',
title: '菜单类型',
required: true,
dataSource: [
{ value: 'group', label: '菜单组' },
{ value: 'link', label: '自定义链接' },
{ value: 'page', label: '页面' },
],
linkages: [
{
"type": "value:visible",
"target": "page",
"condition": "{{ $self.value === 'page' }}"
},
{
"type": "value:visible",
"target": "url",
"condition": "{{ $self.value === 'link' }}"
},
],
},
{
interface: 'linkTo',
type: 'belongsTo',
name: 'page',
title: '页面',
target: 'pages',
// targetKey: 'name',
},
{
interface: 'string',
type: 'string',
name: 'url',
title: '链接地址',
required: true,
},
{
interface: 'boolean',
type: 'boolean',
name: 'developerMode',
title: '开发者模式',
developerMode: true,
defaultValue: false,
},
{
interface: 'json',
type: 'json',
name: 'options',
title: '配置信息',
defaultValue: {},
developerMode: true,
},
],
} as TableOptions;