oadp-material
Version:
oadp-material
550 lines (544 loc) • 17.1 kB
text/typescript
import { IPublicTypeComponentMetadata, IPublicTypeSnippet, IPublicModelSettingField } from '@alilc/lowcode-types';
const OadpSelectMeta: IPublicTypeComponentMetadata = {
"componentName": "OadpSelect",
"title": "选择框",
"docUrl": "",
"category": "高级组件",
"group": "低代码组件",
"screenshot": "https://alifd.oss-cn-hangzhou.aliyuncs.com/fusion-cool/icons/icon-light/ic_light_select.png",
"devMode": "proCode",
"npm": {
"package": "oadp-material",
"version": "{{version}}",
"exportName": "OadpSelect",
"main": "src/index.tsx",
"destructuring": true,
"subName": ""
},
"configure": {
"props": [
{
"name": "DataSetting",
"title": "数据设置",
"type": "group",
"display": "block",
"items": [
{
"name": "name",
"title": {
"label": {
"type": "i18n",
"zh_CN": "表单标识",
"en_US": "Name",
},
"tip": {
"type": "i18n",
"zh_CN": "属性: name | 说明: 表单标识",
"en_US": "prop: name | description: switch name",
},
},
"setter": "StringSetter",
"supportVariable": false,
},
{
"name": "id",
"title": {
"label": {
"type": "i18n",
"zh_CN": "唯一标识",
"en_US": "ID",
},
"tip": {
"type": "i18n",
"zh_CN": "属性: id | 说明: 唯一标识",
"en_US": "prop: id | description: switch id",
},
},
"setter": "StringSetter"
},
{
"name": "entity",
"title": {
"label": {
"type": "i18n",
"en-US": "Entity",
"zh-CN": "绑定实体"
},
"tip": {
"type": "i18n",
"zh_CN": "属性: entity | 说明:绑定实体",
"en_US": "prop: entity | description: Set Entity.",
},
},
"description": "绑定实体",
"setter": "OadpEntitySetter",
"supportVariable": true,
},
{
"title": {
"label": {
"type": "i18n",
"en-US": "Attribute",
"zh-CN": "绑定属性"
},
"tip": {
"type": "i18n",
"zh_CN": "属性: attribute | 说明:绑定属性",
"en_US": "prop: attribute | description: Set Attribute.",
},
},
"name": "attribute",
"description": "绑定属性",
"setter": {
"componentName": "OadpAttributeSetter",
"props": (target: IPublicModelSettingField) => ({
"entity": target.parent.getPropValue('entity'),
}),
},
"supportVariable": true,
},
{
"name": "defaultValue",
"title": {
"label": {
"type": "i18n",
"zh_CN": "默认值",
"en_US": "Default Value",
},
"tip": {
"type": "i18n",
"zh_CN": "属性: defaultValue | 说明: 默认值",
"en_US": "prop: defaultValue | description: Default Value",
},
},
"setter": {
"componentName": "OadpReferValueSetter",
"props": (target: IPublicModelSettingField) => ({
"attribute": target.parent.getPropValue('attribute'),
}),
},
"supportVariable": true,
"description": "默认值",
},
{
"name": "field",
"title": {
"label": {
"type": "i18n",
"en-US": "Field Instacne",
"zh-CN": "Field实例"
},
"tip": {
"type": "i18n",
"zh_CN": "属性: field | 说明:Field实例。传 false 会禁用 field",
"en_US": "prop: field | description: Field Instacne.",
},
"docUrl": "https://fusion.alibaba-inc.com/pc/component/basic/form#%E5%A4%8D%E6%9D%82%E5%8A%9F%E8%83%BD(Field)"
},
"description": "数据源",
"setter": "ExpressionSetter",
"supportVariable": true,
},
{
"name": "filterRule",
"title": {
"label": {
"type": "i18n",
"en-US": "Filter Rule",
"zh-CN": "过滤规则"
},
"tip": {
"type": "i18n",
"zh_CN": "属性: filterRule | 说明:过滤规则。",
"en_US": "prop: filterRule | description: Filter Rule.",
},
"docUrl": "https://fusion.alibaba-inc.com/pc/component/basic/form#%E5%A4%8D%E6%9D%82%E5%8A%9F%E8%83%BD(Field)"
},
"description": "过滤规则",
"setter": {
"componentName": "OadpAttributeFilterSetter",
"props": (target: IPublicModelSettingField) => ({
"attribute": target.parent.getPropValue('attribute'),
}),
},
"supportVariable": true,
},
]
},
{
"name": "DisplaySetting",
"title": "显示设置",
"type": "group",
"display": "block",
"items": [
{
"name": "label",
"title": {
"label": {
"type": "i18n",
"zh_CN": "标题",
"en_US": "Label",
},
"tip": {
"type": "i18n",
"zh_CN": "属性: label | 说明: 标题",
"en_US": "prop: label | description: label content",
},
},
"setter": "StringSetter",
"description": "标题",
},
{
"name": "placeholder",
"title": {
"label": {
"type": "i18n",
"zh_CN": "提示",
"en_US": "Placeholder",
},
"tip": {
"type": "i18n",
"zh_CN": "属性: placeholder | 说明: 提示",
"en_US": "prop: placeholder | description: placeholder",
},
},
"setter": "StringSetter",
"supportVariable": true,
},
{
"name": "size",
"title": {
"label": {
"type": "i18n",
"en-US": "Size",
"zh-CN": "尺寸模式"
},
"tip": {
"type": "i18n",
"zh_CN": "属性: size | 说明: 尺寸模式,可选值:small=紧凑模式, medium=普通模式, large=放大模式。默认为:medium。",
"en_US": "prop: size | description: Size mode, optional values: small=compact mode, medium=normal mode, large=large mode. The default is: medium.",
},
},
"description": "属性: size | 说明: 尺寸模式,可选值:small=紧凑模式, medium=普通模式, large=放大模式。默认为:medium。",
"setter": {
"componentName": "RadioGroupSetter",
"props": {
"dataSource": [
{
"label": "普通模式",
"value": "medium"
},
{
"label": "紧凑模式",
"value": "small"
},
{
"label": "放大模式",
"value": "large"
}
],
"options": [
{
"label": "普通模式",
"value": "medium"
},
{
"label": "紧凑模式",
"value": "small"
},
{
"label": "放大模式",
"value": "large"
}
]
},
"initialValue": "medium"
}
},
{
"name": "mode",
"title": {
"label": {
"type": "i18n",
"en-US": "Mode",
"zh-CN": "选择模式"
},
"tip": {
"type": "i18n",
"zh_CN": "属性: mode | 说明: 选择模式,可选值:single=单选模式, multiple=多选模式, tag=标签模式。默认为:single。",
"en_US": "prop: mode | description: Select mode, optional values: single=single selection mode, multiple=multiple selection mode, tag=label mode. The default is: single.",
},
},
"description": "属性: mode | 说明: 选择模式,可选值:single=单选模式, multiple=多选模式, tag=标签模式。默认为:single。",
"setter": {
"componentName": "RadioGroupSetter",
"props": {
"dataSource": [
{
"label": "单选模式",
"value": "single"
},
{
"label": "多选模式",
"value": "multiple"
},
{
"label": "标签模式",
"value": "tag"
}
],
"options": [
{
"label": "单选模式",
"value": "single"
},
{
"label": "多选模式",
"value": "multiple"
},
{
"label": "标签模式",
"value": "tag"
}
]
},
"initialValue": "single"
}
},
{
"name": "hasBorder",
"title": {
"label": {
"type": "i18n",
"zh_CN": "显示边框",
"en_US": "hasBorder",
},
"tip": {
"type": "i18n",
"zh_CN": "属性: hasBorder | 说明: 显示边框",
"en_US": "prop: hasBorder | description: hasBorder",
},
},
"setter": "BoolSetter",
"supportVariable": false,
"description": "显示边框",
},
{
"name": "hasArrow",
"title": {
"label": {
"type": "i18n",
"zh_CN": "显示箭头",
"en_US": "hasArrow",
},
"tip": {
"type": "i18n",
"zh_CN": "属性: hasArrow | 说明: 显示箭头",
"en_US": "prop: hasArrow | description: hasArrow",
},
},
"setter": "BoolSetter",
"supportVariable": false,
"description": "显示箭头",
},
{
"name": "hasClear",
"title": {
"label": {
"type": "i18n",
"zh_CN": "显示清除",
"en_US": "hasClear",
},
"tip": {
"type": "i18n",
"zh_CN": "属性: hasClear | 说明: 显示清除",
"en_US": "prop: hasClear | description: hasClear",
},
},
"setter": "BoolSetter",
"supportVariable": false,
"description": "显示清除",
},
{
"name": "width",
"title": {
"label": {
"type": "i18n",
"en-US": "width",
"zh-CN": "宽度"
},
"tip": {
"type": "i18n",
"en-US": "width",
"zh-CN": "宽度"
}
},
"description": "宽度",
"setter": {
"componentName": "MixedSetter",
"props": {
"setters": [
{
"componentName": "StringSetter",
"isRequired": false,
"initialValue": ""
},
{
"componentName": "NumberSetter",
"isRequired": false,
"initialValue": 0
}
]
}
}
},
]
},
{
"name": "InteractionSetting",
"title": "交互设置",
"type": "group",
"display": "block",
"items": [
{
"name": "required",
"title": {
"label": {
"type": "i18n",
"en-US": "required",
"zh-CN": "必填"
},
"tip": {
"type": "i18n",
"zh_CN": "属性: required | 说明: 必填",
"en_US": "prop: required | description: required",
},
},
"description": "必填",
"setter": {
"componentName": "BoolSetter",
"isRequired": false,
"initialValue": false
}
},
{
"name": "readOnly",
"title": {
"label": {
"type": "i18n",
"zh_CN": "只读",
"en_US": "readOnly",
},
"tip": {
"type": "i18n",
"zh_CN": "属性: readOnly | 说明: 是否只读,只读模式下可以展开弹层但不能选",
"en_US": "prop: readOnly | description: Whether it is read-only, read-only mode can expand the pop-up layer but cannot select",
},
},
"setter": "BoolSetter",
"supportVariable": false,
"description": "只读",
},
{
"name": "disabled",
"title": {
"label": {
"type": "i18n",
"zh_CN": "禁用",
"en_US": "Disabled",
},
"tip": {
"type": "i18n",
"zh_CN": "属性: disabled | 说明: 禁用",
"en_US": "prop: disabled | description: disabled",
},
},
"setter": "BoolSetter",
"supportVariable": false,
"description": "禁用",
},
]
},
],
"supports": {
"style": true,
"events": [
{
"name": "onChange",
"propType": "func",
"description": "值改变时触发",
},
{
"name": "onFocus",
"propType": "func",
"description": "选中焦点时触发",
},
{
"name": "onBlur",
"propType": "func",
"description": "失去焦点时触发",
},
{
"name": "onSearch",
"propType": "func",
"description": "搜索时触发",
},
],
},
"component": {}
}
};
const snippets: IPublicTypeSnippet[] = [
{
"title": "选择框",
"screenshot": "https://alifd.oss-cn-hangzhou.aliyuncs.com/fusion-cool/icons/icon-light/ic_light_select.png",
"schema": {
"componentName": "OadpSelect",
// "props": {
// "name": "referEntity",
// "placeholder": "请选择内容",
// "required": false,
// "disabled": false,
// "size": "medium",
// "style": {
// "width": 256
// },
// "hasArrow": true,
// "hasClear": true,
// "hasBorder": true,
// "mode": "single"
// },
"props": {
"placeholder": "请选择内容",
"defaultValue": "item1",
"required": false,
"disabled": false,
"size": "medium",
"style": {
"width": 256
},
"hasArrow": true,
"hasClear": true,
"hasBorder": true,
"dataSource": [
{
"value": "item1",
"label": "选项一"
},
{
"value": "item2",
"label": "选项二"
},
{
"value": "item3",
"label": "选项三"
}
]
},
}
}
];
export default {
...OadpSelectMeta,
snippets
};