mirror of
https://github.com/alibaba/lowcode-engine.git
synced 2025-12-14 13:03:07 +00:00
joint setters
This commit is contained in:
parent
6b0e9ec145
commit
8315bc1124
@ -1,8 +1,7 @@
|
|||||||
import { DatePicker, Input, Radio, Select, Switch } from '@alifd/next';
|
import { DatePicker, Input, Radio, Select, Switch, NumberPicker } from '@alifd/next';
|
||||||
import NumberSetter from '../../../plugin-setters/src/number-setter';
|
|
||||||
import ExpressionSetter from '../../../plugin-setters/src/expression-setter';
|
import ExpressionSetter from '../../../plugin-setters/src/expression-setter';
|
||||||
import MixinSetter from '../../../plugin-setters/src/mixin-setter';
|
import MixinSetter from '../../../plugin-setters/src/mixin-setter';
|
||||||
import EventsSetter from '../../../plugin-settings/src/builtin-setters/events-setter'
|
import EventsSetter from '../../../plugin-setters/src/events-setter';
|
||||||
import { registerSetter } from '../../../plugin-settings/src';
|
import { registerSetter } from '../../../plugin-settings/src';
|
||||||
import { createElement } from 'react';
|
import { createElement } from 'react';
|
||||||
|
|
||||||
@ -17,17 +16,20 @@ registerSetter('ClassNameSetter', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
registerSetter('EventsSetter', EventsSetter);
|
registerSetter('EventsSetter', EventsSetter);
|
||||||
|
registerSetter('StringSetter', { component: Input, defaultProps: { placeholder: '请输入' } });
|
||||||
registerSetter('StringSetter', { component: Input, props: { placeholder: '请输入' } });
|
registerSetter('NumberSetter', NumberPicker);
|
||||||
|
|
||||||
registerSetter('NumberSetter', NumberSetter as any);
|
|
||||||
|
|
||||||
registerSetter('StringSetter', { component: Input, props: { placeholder: '请输入' } });
|
|
||||||
registerSetter('ExpressionSetter', ExpressionSetter);
|
registerSetter('ExpressionSetter', ExpressionSetter);
|
||||||
registerSetter('MixinSetter', MixinSetter);
|
registerSetter('MixinSetter', MixinSetter);
|
||||||
registerSetter('BoolSetter', Switch);
|
registerSetter('BoolSetter', Switch);
|
||||||
registerSetter('RadioGroupSetter', Radio.RadioGroup);
|
registerSetter('RadioGroupSetter', {
|
||||||
|
component: Radio.Group,
|
||||||
|
defaultProps: {
|
||||||
|
shape: 'button'
|
||||||
|
}
|
||||||
|
});
|
||||||
registerSetter('SelectSetter', Select);
|
registerSetter('SelectSetter', Select);
|
||||||
|
|
||||||
|
// suggest: 做成 StringSetter 的一个参数,
|
||||||
registerSetter('TextAreaSetter', Input.TextArea);
|
registerSetter('TextAreaSetter', Input.TextArea);
|
||||||
registerSetter('DateSetter', DatePicker);
|
registerSetter('DateSetter', DatePicker);
|
||||||
registerSetter('DateYearSetter', DatePicker.YearPicker);
|
registerSetter('DateYearSetter', DatePicker.YearPicker);
|
||||||
|
|||||||
@ -34,7 +34,8 @@ export default class Mixin extends PureComponent {
|
|||||||
};
|
};
|
||||||
static defaultProps = {
|
static defaultProps = {
|
||||||
locale: 'zh-CN',
|
locale: 'zh-CN',
|
||||||
messages: zhCN
|
messages: zhCN,
|
||||||
|
types: ['StringSetter', 'ExpressionSetter', 'NumberSetter', 'BoolSetter', 'SelectSetter', 'RadioGroupSetter'],
|
||||||
};
|
};
|
||||||
constructor(props) {
|
constructor(props) {
|
||||||
super(props);
|
super(props);
|
||||||
|
|||||||
@ -61,7 +61,7 @@ export function propTypeToSetter(propType: PropType): SetterType {
|
|||||||
value,
|
value,
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
const componentName = dataSource.length > 4 ? 'SelectSetter' : 'RadioSetter';
|
const componentName = dataSource.length > 4 ? 'SelectSetter' : 'RadioGroupSetter';
|
||||||
return {
|
return {
|
||||||
componentName,
|
componentName,
|
||||||
props: { dataSource },
|
props: { dataSource },
|
||||||
@ -141,7 +141,8 @@ export function propTypeToSetter(propType: PropType): SetterType {
|
|||||||
return {
|
return {
|
||||||
componentName: 'MixinSetter',
|
componentName: 'MixinSetter',
|
||||||
props: {
|
props: {
|
||||||
setters: (propType as OneOfType).value.map(item => propTypeToSetter(item)),
|
// TODO:
|
||||||
|
// setters: (propType as OneOfType).value.map(item => propTypeToSetter(item)),
|
||||||
},
|
},
|
||||||
isRequired,
|
isRequired,
|
||||||
};
|
};
|
||||||
@ -290,11 +291,12 @@ registerMetadataTransducer(metadata => {
|
|||||||
setter: {
|
setter: {
|
||||||
componentName: 'MixinSetter',
|
componentName: 'MixinSetter',
|
||||||
props: {
|
props: {
|
||||||
|
// TODO:
|
||||||
setters: [
|
setters: [
|
||||||
{
|
{
|
||||||
componentName: 'StringSetter',
|
componentName: 'StringSetter',
|
||||||
props: {
|
props: {
|
||||||
// todo:
|
// TODO: textarea mode
|
||||||
multiline: true,
|
multiline: true,
|
||||||
},
|
},
|
||||||
initialValue: '',
|
initialValue: '',
|
||||||
@ -463,6 +465,7 @@ registerMetadataTransducer(metadata => {
|
|||||||
setter: {
|
setter: {
|
||||||
componentName: 'MixinSetter',
|
componentName: 'MixinSetter',
|
||||||
props: {
|
props: {
|
||||||
|
// TODO:
|
||||||
setters: [
|
setters: [
|
||||||
{
|
{
|
||||||
componentName: 'JSONSetter',
|
componentName: 'JSONSetter',
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user