AbdulElahGwaith's picture
Upload folder using huggingface_hub
c9d0005 verified
Raw
History Blame Contribute Delete
5.24 kB
import cloneDeep from 'lodash/cloneDeep';
export const inputPropsBasic = [
{
name: 'title',
title: { label: '标题', tip: 'title | 标题' },
setter: 'StringSetter',
},
{
name: 'code',
title: { label: '字段名', tip: 'key | 字段名' },
setter: 'StringSetter',
},
{
name: 'defaultValue',
title: { label: '默认值', tip: 'defaultValue | 默认值'},
setter: 'StringSetter'
},
{
name: 'props.placeholder',
title: { label: '提示文案', tip: 'placeholder | 提示文案' },
setter: 'StringSetter'
},
{
name: 'description',
title: { label: '补充说明', tip: 'description | 补充说明' },
setter: 'StringSetter',
},
{
name: 'tooltip.title',
title: { label: '气泡提示', tip: 'tooltip.title | 气泡提示文案' },
setter: 'StringSetter',
},
{
name: 'extra',
title: { label: '额外提示', tip: 'extra | 额外的提示信息'},
setter: 'StringSetter'
},
{
name: 'disabled',
title: { label: '禁用', tip: 'disabled | 禁用' },
setter: 'FrExpressionSetter'
},
{
name: 'hidden',
title: { label: '隐藏', tip: 'hidden | 隐藏' },
setter: 'FrExpressionSetter'
},
{
name: 'readOnly',
title: { label: '只读', tip: 'readOnly | 只读' },
setter: 'FrExpressionSetter'
},
{
name: 'readOnlyWidget',
title: { label: '只读组件', tip: 'readOnlyWidget | 只读组件' },
setter: 'StringSetter',
condition: (target: any) => !!target.getProps().getPropValue('readOnly')
}
];
export const notInputPropsBasic = [
{
name: 'title',
title: { label: '标题', tip: 'title | 标题' },
setter: 'StringSetter',
},
{
name: 'code',
title: { label: '字段名', tip: 'key | 字段名' },
setter: 'StringSetter',
},
{
name: 'defaultValue',
title: { label: '默认值', tip: 'defaultValue | 默认值'},
setter: 'StringSetter'
},
{
name: 'description',
title: { label: '补充说明', tip: 'description | 补充说明' },
setter: 'StringSetter',
},
{
name: 'tooltip',
title: { label: '气泡提示', tip: 'tooltip | 气泡提示文案' },
setter: 'StringSetter',
},
{
name: 'extra',
title: { label: '额外提示', tip: 'extra | 额外的提示信息'},
setter: 'StringSetter'
},
{
name: 'disabled',
title: { label: '禁用', tip: 'disabled | 禁用' },
setter: 'FrExpressionSetter'
},
{
name: 'hidden',
title: { label: '隐藏', tip: 'hidden | 隐藏' },
setter: 'FrExpressionSetter'
},
{
name: 'readOnly',
title: { label: '只读', tip: 'readOnly | 只读' },
setter: 'FrExpressionSetter'
},
{
name: 'readOnlyWidget',
title: { label: '只读组件', tip: 'readOnlyWidget | 只读组件' },
setter: 'StringSetter',
condition: (target: any) => !!target.getProps().getPropValue('readOnly')
}
];
export const optionsProp = {
display: 'accordion',
name: 'props.options',
title: { label: '选项配置', tip: 'options | 选项配置' },
setter: {
componentName: 'ArraySetter',
props: {
itemSetter: {
componentName: 'ObjectSetter',
initialValue: () => ({
label: '选项名',
value: uuid()
}),
props: {
config: {
items: [
{
name: 'label',
title: '选项名',
important: true,
setter: 'StringSetter',
},
{
name: 'value',
title: '选项值',
setter: ['StringSetter', 'NumberSetter'],
important: true,
},
{
name: 'disabled',
title: '禁用',
setter: 'JsonSetter',
}
]
}
}
}
}
}
};
export const getInputPropsBasic = (defaultValueProp: any, placeholder?: any) => {
const result = cloneDeep(inputPropsBasic);
result.splice(2, 0, defaultValueProp);
if (placeholder) {
result.splice(3, 0, defaultValueProp);
}
return result;
}
export const getNotInputPropsBasic = (defaultValueProp: any) => {
const result = cloneDeep(notInputPropsBasic);
result.splice(2, 0, defaultValueProp);
return result;
}
export const uuid = () => {
return ((Math.random() * 1e6) >> 0).toString(36);
};
export const createMeta = (componentName: string, params: any) => {
return {
componentName,
docUrl: '',
screenshot: '',
devMode: 'proCode',
npm: {
package: '@ali/form-render-material',
version: '1.0.0',
exportName: componentName,
main: 'src/index.tsx',
destructuring: true,
subName: '',
},
configure: {
supports: {
loop: false,
condition: false
},
component: {
isContainer: false,
isModal: false,
nestingRule: {
parentWhitelist: ['FormRender', 'Card', 'CardList', 'TableList']
}
},
},
group: '基础组件',
category: '常用',
icon: 'https://img.alicdn.com/imgextra/i4/O1CN01gxzRdT1hm9KXRbZkU_!!6000000004319-2-tps-200-200.png',
...params
};
}