UNPKG

@ywfe/materials-design

Version:
228 lines (227 loc) 7.23 kB
"use strict"; exports.__esModule = true; exports.operations = exports.operationProps = exports.operationConfig = void 0; var _utils = require("../_utils"); var operationConfig = exports.operationConfig = { name: 'operationConfig', display: 'accordion', title: '底部操作', setter: { componentName: 'ObjectSetter', props: { config: { items: [{ name: 'visibleButtonCount', title: { label: '可见数量', tip: '超过会收起到”更多“菜单中' }, extraProps: { defaultValue: 3 }, setter: { componentName: 'NumberSetter', props: { max: 6, min: 1 } } }, { name: 'fixed', title: '吸底', setter: 'BoolSetter' }, { name: 'showSaveTime', title: '显示时间', setter: { componentName: 'BoolSetter' } }, { name: 'align', title: '布局', defaultValue: 'center', setter: { componentName: 'RadioGroupSetter', props: { options: [{ title: '居左', value: 'left' }, { title: '居中', value: 'center' }, { title: '居右', value: 'right' }] } } }] } } } }; var operations = exports.operations = { name: 'operations', display: 'block', title: '操作项', getValue: function getValue(target, value) { return value || []; }, setter: { componentName: 'MixedSetter', props: { setters: [{ componentName: 'SlotSetter', defaultValue: { type: 'JSSlot', value: [] } }, { componentName: 'ArraySetter', props: { itemSetter: { componentName: 'ObjectSetter', props: { config: { items: [{ name: 'id', condition: _utils.hideProp, setter: function setter(target) { if (!target.getValue()) { target.setValue("" + target.id); } return 'StringSetter'; } }, { name: 'content', display: 'inline', title: '文本', setter: 'StringSetter', important: true }, { name: 'action', display: 'inline', title: '操作', important: true, setValue: function setValue(target, value) { var actionNameMap = { submit: '提交', reset: '重置', custom: '自定义' }; var actionName = actionNameMap[value] || '自定义'; target.parent.setPropValue('content', actionName); }, setter: { componentName: 'SelectSetter', props: { options: [{ title: '提交', value: 'submit' }, { title: '重置', value: 'reset' }, { title: '自定义', value: 'custom' }] } } }, { name: 'type', display: 'inline', title: '样式', important: true, setter: { componentName: 'SelectSetter', props: { options: [{ title: '主要', value: 'primary' }, { title: '次要', value: 'secondary' }, { title: '普通', value: 'normal' }] } } }, { name: 'behavior', title: '交互设置', display: 'block', condition: function condition(target) { var action = target.parent.getPropValue('action'); return !action || action === 'custom'; }, setter: { componentName: 'BehaviorSetter', props: function props(target) { return { actions: ['onClick'], enableTooltipAction: true, enableMessageAction: true, extendedOptions: { tooltip: { id: target.parent.getPropValue('id'), defaultTriggerType: 'click' }, message: { types: ['notice', 'success', 'loading', 'warning', 'error'], defaultType: 'notice', library: 'Next', component: 'Message' } } }; } } }, { name: 'onClick', display: 'inline', title: '点击事件', condition: _utils.hideProp, setter: 'FunctionSetter', extraProps: { supportVariable: true } }, { name: 'htmlType', condition: _utils.hideProp }, { name: '!autoSubmit', display: 'inline', virtual: true, title: '自动提交', setter: { componentName: 'BoolSetter' }, extraProps: { setValue: function setValue(target, value) { target.parent.setPropValue('htmlType', value ? 'submit' : ''); }, getValue: function getValue(target, value) { return value === 'submit'; } }, condition: function condition(target) { return target.parent.getPropValue('action') !== 'submit'; } }] } }, initialValue: function initialValue() { return { content: '提交', action: 'submit', type: 'normal' }; } } } }] } } }; var operationProps = exports.operationProps = [operationConfig, operations];