import { ObjectSchema } from '..';

export const systemTypeList = [
    { kind: 'systemType', text: 'DataSourceParams', value: '#/systemTypes/DataSourceParams' },
    { kind: 'systemType', text: 'EventTarget', value: '#/systemTypes/EventTarget' },
    { kind: 'systemType', text: 'MouseEvent', value: '#/systemTypes/MouseEvent' },
    { kind: 'systemType', text: 'FocusEvent', value: '#/systemTypes/FocusEvent' },
    { kind: 'systemType', text: 'ChangeEvent', value: '#/systemTypes/ChangeEvent' },
    { kind: 'systemType', text: 'NavigateEvent', value: '#/systemTypes/NavigateEvent' },
    { kind: 'systemType', text: 'ChangeItemEvent', value: '#/systemTypes/ChangeItemEvent' },
    { kind: 'systemType', text: 'ChangeItemsEvent', value: '#/systemTypes/ChangeItemsEvent' },
    { kind: 'systemType', text: 'CascadeCapsulesEvent', value: '#/systemTypes/CascadeCapsulesEvent' },
    { kind: 'systemType', text: 'CollapseEvent', value: '#/systemTypes/CollapseEvent' },
    { kind: 'systemType', text: 'SliderEvent', value: '#/systemTypes/SliderEvent' },
    { kind: 'systemType', text: 'DateEvent', value: '#/systemTypes/DateEvent' },
    { kind: 'systemType', text: 'OperatorItemEvent', value: '#/systemTypes/OperatorItemEvent' },
    { kind: 'systemType', text: 'ValidateEvent', value: '#/systemTypes/ValidateEvent' },
    { kind: 'systemType', text: 'PaginationEvent', value: '#/systemTypes/PaginationEvent' },
    { kind: 'systemType', text: 'DurationEvent', value: '#/systemTypes/DurationEvent' },
    { kind: 'systemType', text: 'TransferEvent', value: '#/systemTypes/TransferEvent' },
    { kind: 'systemType', text: 'TreeChangeEvent', value: '#/systemTypes/TreeChangeEvent' },
    { kind: 'systemType', text: 'CheckedEvent', value: '#/systemTypes/CheckedEvent' },
    { kind: 'systemType', text: 'UploadEvent', value: '#/systemTypes/UploadEvent' },
    { kind: 'systemType', text: 'UploadErrorEvent', value: '#/systemTypes/UploadErrorEvent' },
    { kind: 'systemType', text: 'SortEvent', value: '#/systemTypes/SortEvent' },
];

export const systemTypeMap: { [name: string]: ObjectSchema } = {
    '#/systemTypes/EventTarget': {
        name: 'EventTarget',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'preventDefault',
                description: '阻止改变流程',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/MouseEvent': {
        name: 'MouseEvent',
        type: 'object',
        propertyList: [
            {
                $ref: '#/systemTypes/EventTarget',
                name: 'target',
                description: '事件对象',
                isLeaf: true,
            },
            {
                $ref: '#/systemTypes/EventTarget',
                name: 'currentTarget',
                description: '事件对象',
                isLeaf: true,
            },
            {
                $ref: '#/systemTypes/EventTarget',
                name: 'relatedTarget',
                description: '事件对象',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Boolean',
                type: 'boolean',
                format: '',
                name: 'altKey',
                description: '如果alt 键被按下，返回true',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'button',
                description: '如果鼠标按钮被按下（如果有的话），将会返回一个数值',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'clientX',
                description: '鼠标指针在点击元素（DOM）中的X坐标',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'clientY',
                description: '鼠标指针在点击元素（DOM）中的Y坐标',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Boolean',
                type: 'boolean',
                format: '',
                name: 'ctrlKey',
                description: '如果 control 键被按下，则返回 true',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Boolean',
                type: 'boolean',
                format: '',
                name: 'metaKey',
                description: '如果 meta 键被按下，则返回 true',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'movementX',
                description: '鼠标指针相对于最后mousemove事件位置的X坐标',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'movementY',
                description: '鼠标指针相对于最后mousemove事件位置的Y坐标',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'offsetX',
                description: '鼠标指针相对于目标节点内边位置的X坐标',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'offsetY',
                description: '鼠标指针相对于目标节点内边位置的Y坐标',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'pageX',
                description: '相对于整个文档的水平坐标',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'pageY',
                description: '相对于整个文档的垂直坐标',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'screenX',
                description: '相对于全局（屏幕）的水平坐标',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'screenY',
                description: '相对于全局（屏幕）的垂直坐标',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'witch',
                description: '对应（键盘）按下的数字类型的 keyCode',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/FocusEvent': {
        name: 'FocusEvent',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/Boolean',
                type: 'boolean',
                format: '',
                name: 'cancelBubble',
                description: '是否取消冒泡',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'detail',
                description: '详情',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'layerX',
                description: '相对于当前层的水平坐标',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'layerY',
                description: '相对于当前层的垂直坐标',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'pageX',
                description: '相对于整个文档的水平坐标',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'pageY',
                description: '相对于整个文档的垂直坐标',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'witch',
                description: '对应（键盘）按下的数字类型的 keyCode',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/ChangeEvent': {
        name: 'ChangeEvent',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'value',
                description: '改变后的值',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'oldValue',
                description: '待改变的值',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'formattedValue',
                description: '格式化后的值',
                isLeaf: true,
            },
            {
                type: 'genericType',
                typeKey: '#/genericTypes/List',
                typeInstantiation: {
                    typeName: 'List',
                    typeParams: [
                        {
                            type: 'typeParam',
                            typeParamName: 'T',
                            typeParamValue: {
                                typeKey: '#/basicTypes/String',
                                type: 'string',
                                format: '',
                            },
                        },
                    ],
                },
                name: 'values',
                description: '改变后每项值的数组',
                isLeaf: true,
            },
            {
                type: 'genericType',
                typeKey: '#/genericTypes/List',
                typeInstantiation: {
                    typeName: 'List',
                    typeParams: [
                        {
                            type: 'typeParam',
                            typeParamName: 'T',
                            typeParamValue: {
                                typeKey: '#/basicTypes/String',
                                type: 'string',
                                format: '',
                            },
                        },
                    ],
                },
                name: 'oldValues',
                description: '旧的每项值的数组',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'label',
                description: '此选框的标签',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Boolean',
                type: 'boolean',
                format: '',
                name: 'valid',
                description: '改变后的值是否合法',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'preventDefault',
                description: '阻止改变流程',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/NavigateEvent': {
        name: 'NavigateEvent',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'to',
                description: 'to属性的值',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Boolean',
                type: 'boolean',
                format: '',
                name: 'replace',
                description: '',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Boolean',
                type: 'boolean',
                format: '',
                name: 'append',
                description: '',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'preventDefault',
                description: '阻止改变流程',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/ChangeItemEvent': {
        name: 'ChangeItemEvent',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'selected',
                description: '选中还是取消',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'value',
                description: '选择项的值',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'oldValue',
                description: '旧的值',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'item',
                description: '选择项相关对象',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'oldItem',
                description: '旧的选择项相关对象',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'itemVM',
                description: '选择项子组件',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'oldVM',
                description: '旧的选择项子组件',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'label',
                description: '此选框的标签',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'preventDefault',
                description: '阻止改变流程',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/ChangeItemsEvent': {
        name: 'ChangeItemsEvent',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/Boolean',
                type: 'boolean',
                format: '',
                name: 'selected',
                description: '选中还是取消',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'item',
                description: '该选中项相关对象',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'itemVM',
                description: '该选中项子组件',
                isLeaf: true,
            },
            {
                type: 'genericType',
                typeKey: '#/genericTypes/List',
                typeInstantiation: {
                    typeName: 'List',
                    typeParams: [
                        {
                            type: 'typeParam',
                            typeParamName: 'T',
                            typeParamValue: {
                                typeKey: '#/basicTypes/String',
                                type: 'string',
                                format: '',
                            },
                        },
                    ],
                },
                name: 'value',
                description: '所有选中项的值',
                isLeaf: true,
            },
            {
                type: 'genericType',
                typeKey: '#/genericTypes/List',
                typeInstantiation: {
                    typeName: 'List',
                    typeParams: [
                        {
                            type: 'typeParam',
                            typeParamName: 'T',
                            typeParamValue: {
                                typeKey: '#/basicTypes/String',
                                type: 'string',
                                format: '',
                            },
                        },
                    ],
                },
                name: 'oldValue',
                description: '旧的值',
                isLeaf: true,
            },
            {
                type: 'genericType',
                typeKey: '#/genericTypes/List',
                typeInstantiation: {
                    typeName: 'List',
                    typeParams: [
                        {
                            type: 'typeParam',
                            typeParamName: 'T',
                            typeParamValue: {
                                typeKey: '#/basicTypes/String',
                                type: 'string',
                                format: '',
                            },
                        },
                    ],
                },
                name: 'items',
                description: '所有选中项相关对象的数组',
                isLeaf: true,
            },
            {
                type: 'genericType',
                typeKey: '#/genericTypes/List',
                typeInstantiation: {
                    typeName: 'List',
                    typeParams: [
                        {
                            type: 'typeParam',
                            typeParamName: 'T',
                            typeParamValue: {
                                typeKey: '#/basicTypes/String',
                                type: 'string',
                                format: '',
                            },
                        },
                    ],
                },
                name: 'oldItems',
                description: '旧的所有选中项相关对象的数组',
                isLeaf: true,
            },
            {
                type: 'genericType',
                typeKey: '#/genericTypes/List',
                typeInstantiation: {
                    typeName: 'List',
                    typeParams: [
                        {
                            type: 'typeParam',
                            typeParamName: 'T',
                            typeParamValue: {
                                typeKey: '#/basicTypes/String',
                                type: 'string',
                                format: '',
                            },
                        },
                    ],
                },
                name: 'itemVMs',
                description: '所有选中项子组件的数组',
                isLeaf: true,
            },
            {
                type: 'genericType',
                typeKey: '#/genericTypes/List',
                typeInstantiation: {
                    typeName: 'List',
                    typeParams: [
                        {
                            type: 'typeParam',
                            typeParamName: 'T',
                            typeParamValue: {
                                typeKey: '#/basicTypes/String',
                                type: 'string',
                                format: '',
                            },
                        },
                    ],
                },
                name: 'oldVMs',
                description: '旧的所有选中项子组件的数组',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/CascadeCapsulesEvent': {
        name: 'CascadeCapsulesEvent',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'level',
                description: '选择的层级',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'value',
                description: '改变后的值',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'oldValue',
                description: '旧的值',
                isLeaf: true,
            },
            {
                type: 'genericType',
                typeKey: '#/genericTypes/List',
                typeInstantiation: {
                    typeName: 'List',
                    typeParams: [
                        {
                            type: 'typeParam',
                            typeParamName: 'T',
                            typeParamValue: {
                                typeKey: '#/basicTypes/String',
                                type: 'string',
                                format: '',
                            },
                        },
                    ],
                },
                name: 'values',
                description: '改变后每项值的数组',
                isLeaf: true,
            },
            {
                type: 'genericType',
                typeKey: '#/genericTypes/List',
                typeInstantiation: {
                    typeName: 'List',
                    typeParams: [
                        {
                            type: 'typeParam',
                            typeParamName: 'T',
                            typeParamValue: {
                                typeKey: '#/basicTypes/String',
                                type: 'string',
                                format: '',
                            },
                        },
                    ],
                },
                name: 'oldValues',
                description: '旧的每项值的数组',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'item',
                description: '选择项相关对象',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'itemVM',
                description: '选择项子组件',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/CollapseEvent': {
        name: 'CollapseEvent',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/Boolean',
                type: 'boolean',
                format: '',
                name: 'expanded',
                description: '展开/折叠状态',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Boolean',
                type: 'boolean',
                format: '',
                name: 'open',
                description: '弹出/隐藏状态',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Boolean',
                type: 'boolean',
                format: '',
                name: 'value',
                description: '开关状态',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Boolean',
                type: 'boolean',
                format: '',
                name: 'oldValue',
                description: '旧的开关状态',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'node',
                description: '节点相关对象',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'nodeVM',
                description: '节点组件',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'itemVM',
                description: '面板组件',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'groupVM',
                description: '分组组件',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'preventDefault',
                description: '阻止改变流程',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/SliderEvent': {
        name: 'SliderEvent',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'value',
                description: '滑块的值',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'oldValue',
                description: '旧的值',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'percent',
                description: '滑块位置所在的百分比',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/DateEvent': {
        name: 'DateEvent',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/Date',
                type: 'string',
                format: 'date',
                name: 'date',
                description: '日期值',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Date',
                type: 'string',
                format: 'date',
                name: 'time',
                description: '日期值',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/OperatorItemEvent': {
        name: 'OperatorItemEvent',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'item',
                description: '添加的项',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'index',
                description: '添加的索引',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'data',
                description: '当前数据',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'preventDefault',
                description: '阻止改变流程',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/ValidateEvent': {
        name: 'ValidateEvent',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'rawValue',
                description: '用户输入的原始值',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'value',
                description: '验证修复的值',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'trigger',
                description: '本次验证的触发方式',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'muted',
                description: '是否验证后无提示',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Boolean',
                type: 'boolean',
                format: '',
                name: 'valid',
                description: '验证是否通过',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Boolean',
                type: 'boolean',
                format: '',
                name: 'touched',
                description: '用户是否触碰',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Boolean',
                type: 'boolean',
                format: '',
                name: 'dirty',
                description: '用户是否修改值',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'firstError',
                description: '第一个错误提示消息',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/PaginationEvent': {
        name: 'PaginationEvent',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'page',
                description: '选择的页码',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'oldPage',
                description: '旧的页码',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'pageSize',
                description: '当前每页条数',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'oldPageSize',
                description: '旧的每页条数',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'size',
                description: '当前每页条数',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'oldSize',
                description: '旧的每页条数',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'number',
                description: '当前页数',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'oldNumber',
                description: '旧的页数',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'preventDefault',
                description: '阻止改变流程',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/DurationEvent': {
        name: 'DurationEvent',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'text',
                description: '提示的内容',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'color',
                description: '提示的颜色',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'duration',
                description: '提示停留的时间',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'preventDefault',
                description: '阻止改变流程',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/TransferEvent': {
        name: 'TransferEvent',
        type: 'object',
        propertyList: [
            {
                type: 'genericType',
                typeKey: '#/genericTypes/List',
                typeInstantiation: {
                    typeName: 'List',
                    typeParams: [
                        {
                            type: 'typeParam',
                            typeParamName: 'T',
                            typeParamValue: {
                                typeKey: '#/basicTypes/String',
                                type: 'string',
                                format: '',
                            },
                        },
                    ],
                },
                name: 'source',
                description: '原数据列表',
                isLeaf: true,
            },
            {
                type: 'genericType',
                typeKey: '#/genericTypes/List',
                typeInstantiation: {
                    typeName: 'List',
                    typeParams: [
                        {
                            type: 'typeParam',
                            typeParamName: 'T',
                            typeParamValue: {
                                typeKey: '#/basicTypes/String',
                                type: 'string',
                                format: '',
                            },
                        },
                    ],
                },
                name: 'target',
                description: '目标数据列表',
                isLeaf: true,
            },
            {
                type: 'genericType',
                typeKey: '#/genericTypes/List',
                typeInstantiation: {
                    typeName: 'List',
                    typeParams: [
                        {
                            type: 'typeParam',
                            typeParamName: 'T',
                            typeParamValue: {
                                typeKey: '#/basicTypes/String',
                                type: 'string',
                                format: '',
                            },
                        },
                    ],
                },
                name: 'transfer',
                description: '移动的项',
                isLeaf: true,
            },
            {
                type: 'genericType',
                typeKey: '#/genericTypes/List',
                typeInstantiation: {
                    typeName: 'List',
                    typeParams: [
                        {
                            type: 'typeParam',
                            typeParamName: 'T',
                            typeParamValue: {
                                typeKey: '#/basicTypes/String',
                                type: 'string',
                                format: '',
                            },
                        },
                    ],
                },
                name: 'transferValues',
                description: '移动项的值',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/TreeChangeEvent': {
        name: 'TreeChangeEvent',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'param1',
                description: '参数1',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'param2',
                description: '参数2',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'value',
                description: '改变后的值',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'oldValue',
                description: '待改变的值',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'node',
                description: '选择项相关对象',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'oldNode',
                description: '旧的选择项相关对象',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'nodeVM',
                description: '选择项子组件',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'oldVM',
                description: '旧的选择项子组件',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'preventDefault',
                description: '阻止改变流程',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/CheckedEvent': {
        name: 'CheckedEvent',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/Boolean',
                type: 'boolean',
                format: '',
                name: 'checked',
                description: '选中/取消状态',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Boolean',
                type: 'boolean',
                format: '',
                name: 'oldChecked',
                description: '旧的选中/取消状态',
                isLeaf: true,
            },
            {
                type: 'genericType',
                typeKey: '#/genericTypes/List',
                typeInstantiation: {
                    typeName: 'List',
                    typeParams: [
                        {
                            type: 'typeParam',
                            typeParamName: 'T',
                            typeParamValue: {
                                typeKey: '#/basicTypes/String',
                                type: 'string',
                                format: '',
                            },
                        },
                    ],
                },
                name: 'values',
                description: '改变后每项值的数组',
                isLeaf: true,
            },
            {
                type: 'genericType',
                typeKey: '#/genericTypes/List',
                typeInstantiation: {
                    typeName: 'List',
                    typeParams: [
                        {
                            type: 'typeParam',
                            typeParamName: 'T',
                            typeParamValue: {
                                typeKey: '#/basicTypes/String',
                                type: 'string',
                                format: '',
                            },
                        },
                    ],
                },
                name: 'oldValues',
                description: '改变后每项值的数组',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'node',
                description: '选择项相关对象',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'nodeVM',
                description: '选择项子组件',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'item',
                description: '选择项相关对象',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/UploadEvent': {
        name: 'UploadEvent',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'data',
                description: '进度相关信息',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'file',
                description: '上传文件信息，不包含文件主体内容',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'xhr',
                description: '发送前的 XMLHttpRequest 对象',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'formData',
                description: '用于发送的数据对象',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'xml',
                description: '服务器回传信息',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'preventDefault',
                description: '阻止改变流程',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/UploadErrorEvent': {
        name: 'UploadErrorEvent',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'name',
                description: '错误名',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'message',
                description: '错误描述',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'extensions',
                description: '限制类型',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'maxSize',
                description: '限制大小',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'size',
                description: '当前大小',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'count',
                description: '当前数量',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'limit',
                description: '数量配额',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/SortEvent': {
        name: 'SortEvent',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'field',
                description: '排序字段',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'order',
                description: '排序顺序',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'compare',
                description: '排序比较函数',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'preventDefault',
                description: '阻止改变流程',
                isLeaf: true,
            },
        ],
    },
    '#/systemTypes/DataSourceParams': {
        name: 'DataSourceParams',
        type: 'object',
        propertyList: [
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'page',
                description: '页数',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/Integer',
                type: 'integer',
                format: 'int',
                name: 'size',
                description: '分页大小',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'sort',
                description: '排序字段',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'order',
                description: '升序/降序',
                isLeaf: true,
            },
            {
                typeKey: '#/basicTypes/String',
                type: 'string',
                format: '',
                name: 'filterText',
                description: '筛选文本',
                isLeaf: true,
            },
        ],
    },
};
