UNPKG

@cainiaofe/cn-ui-m-lowcode

Version:
195 lines (193 loc) 5.08 kB
import React from 'react'; import { Bundle } from '@ali/visualengine'; import Icon from './logo'; import { getJSXTemplate, getMixedSetterSnippet, } from '@/common/manager/setter-snippet'; import { getJSExpressionPrototype } from '@/common/manager/common-style'; import { ButtonPosition } from '@/type/button-position'; import { createButtonListSetters, getItem } from '@/common/manager/button'; // 原型配置请参考:https://lark.alipay.com/vision/docs/prototype export default Bundle.createPrototype({ title: '结果反馈', componentName: 'CnResult', category: '反馈', icon: Icon, docUrl: '', isContainer: false, canHovering: true, canSelecting: true, canDragging: true, enableCopy: true, snippets: [ { screenshot: 'https://img.alicdn.com/tfs/TB1gaZrr.T1gK0jSZFhXXaAtVXa-1048-366.png', label: 'CnResult', schema: { componentName: 'CnResult', props: {}, }, }, ], configure: [ { name: 'isCnResult', title: 'isCnResult', initialValue: true, display: 'none', }, { title: '反馈类型', name: 'type', display: 'inline', initialValue: 'info', setter: getMixedSetterSnippet({ setters: [ { componentName: 'CnSelectSetter', props: { options: [ { label: '警告', value: 'warning', }, { label: '错误', value: 'error', }, { label: '成功', value: 'success', }, { label: '信息提示', value: 'info', }, { label: '数据为空', value: 'empty', }, { label: '暂无权限(403)', value: '403', }, { label: '页面不存在(404)', value: '404', }, { label: '服务器异常(500)', value: '500', }, { label: '网络问题', value: 'networkError', }, { label: '暂无消息', value: 'messageEmpty', }, { label: '搜索无结果', value: 'searchEmpty', }, ], selectProps: { hasClear: true, }, }, }, getJSExpressionPrototype({ type: 'base', }), ], }), }, { name: 'title', title: '标题', display: 'inline', setter: getMixedSetterSnippet({ setters: [ { componentName: 'CnI18nSetter', title: '多语言设置器', }, getJSExpressionPrototype({ type: 'base', }), ], }), }, { name: 'subTitle', title: '副标题', display: 'inline', forceInline: 1, setter: { componentName: 'MixedSetter', props: { setters: [ { title: '文本', componentName: 'CnI18nSetter', }, { title: '超链接', componentName: 'ObjectSetter', props: { config: { items: [ { name: 'text', title: '链接文案', display: 'inline', setter: { componentName: 'MixedSetter', props: { setters: [ { componentName: 'CnI18nSetter', title: '文本', }, getJSExpressionPrototype({ type: 'base' }), ], }, }, }, ...getItem( ButtonPosition.result, 'link', 'getPrototypeList', )(ButtonPosition.result), ], }, }, }, getJSXTemplate({ position: ButtonPosition.result, }), ], }, }, }, { name: 'buttons', title: '底部按钮栏', display: 'accordion', initialValue: [], setter: createButtonListSetters({ position: ButtonPosition.result }), }, { name: '_context', title: '上下文', initialValue: { type: 'JSExpression', value: 'this', }, display: 'none', }, ], });