import snippets from "../checkbox/snippets";
export default {
componentName: 'ProTextArea',
title: '多行文本框',
group: '精选组件',
category: '基础元素',
docUrl: '',
screenshot: '',
npm: {
package: 'lowcode-edit-pro-table',
version: '{{version}}',
exportName: 'ProTextArea',
main: 'src/index.tsx',
destructuring: true,
subName: '',
},
props: [
{
name: 'hasBorder',
propType: 'bool',
description: '是否有边框',
defaultValue: true,
},
{
name: 'value',
propType: {
type: 'oneOfType',
value: ['string'],
},
description: 'value',
},
{
name: 'defaultValue',
propType: {
type: 'oneOfType',
value: ['string'],
},
description: 'defaultValue',
},
{
name: 'state',
propType: {
type: 'oneOf',
value: ['error', 'warning'],
},
description: '状态\n@enumdesc 错误',
},
{
name: 'autoHeight',
propType: 'bool',
description: '自动高度 true / {minRows: 2, maxRows: 4}',
defaultValue: false,
},
{
name: 'rows',
propType: 'number',
description:
'多行文本框高度
(不要直接用height设置多行文本框的高度, ie9 10会有兼容性问题)',
defaultValue: 4,
},
{
name: 'isPreview',
propType: 'bool',
description: '是否为预览态',
defaultValue: false,
},
{
name: 'style',
propType: 'object',
},
{
name: 'onClear',
propType: 'func',
},
{
name: 'onChange',
propType: 'func',
},
{
name: 'onKeyDown',
propType: 'func',
},
{
name: 'onFocus',
propType: 'func',
},
{
name: 'onBlur',
propType: 'func',
},
],
configure: {
props: [
{
name: 'rows',
title: {
label: {
type: 'i18n',
zh_CN: '行数',
en_US: 'Rows',
},
tip: {
type: 'i18n',
zh_CN:
'属性: rows | 说明: 多行文本框高度
(不要直接用height设置多行文本框的高度, ie9 10会有兼容性问题)',
en_US: 'prop: rows | description: row numbers',
},
},
setter: 'NumberSetter',
supportVariable: true,
defaultValue: 4,
},
{
name: 'maxLength',
title: {
label: {
type: 'i18n',
zh_CN: '最大长度',
en_US: 'MaxLength',
},
tip: {
type: 'i18n',
zh_CN: '属性: maxLength | 说明: 最大长度',
en_US: 'prop: maxLength | description: max length',
},
},
setter: 'NumberSetter',
supportVariable: true,
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: 'value',
title: {
label: {
type: 'i18n',
zh_CN: '值',
en_US: 'Value',
},
tip: {
type: 'i18n',
zh_CN: '属性: value | 说明: 值',
en_US: 'prop: value | description: value',
},
},
setter: {
componentName: 'MixedSetter',
props: {
setters: ['StringSetter', 'ExpressionSetter'],
},
},
},
{
name: 'defaultValue',
title: {
label: {
type: 'i18n',
zh_CN: '默认值',
en_US: 'defaultValue',
},
tip: {
type: 'i18n',
zh_CN: '属性: defaultValue | 说明: 默认值',
en_US: 'prop: defaultValue | description: defaultValue',
},
},
setter: {
componentName: 'MixedSetter',
props: {
setters: ['StringSetter', 'ExpressionSetter'],
},
},
},
{
name: 'state',
title: {
label: {
type: 'i18n',
zh_CN: '状态',
en_US: 'State',
},
tip: {
type: 'i18n',
zh_CN: '属性: state | 说明: 状态\n@enumdesc 错误',
en_US: 'prop: state | description: input state',
},
},
setter: {
componentName: 'RadioGroupSetter',
props: {
options: ['error', 'warning'],
},
},
},
{
name: 'required',
title: {
label: {
type: 'i18n',
zh_CN: '是否必填',
en_US: 'Required',
},
tip: {
type: 'i18n',
zh_CN: '属性: required | 说明: 是否必填',
en_US: 'prop: required | description: Required',
},
},
setter: 'BoolSetter',
supportVariable: true,
defaultValue: false,
description: '是否必填',
},
{
name: 'disableEdit',
title: {
label: {
type: 'i18n',
zh_CN: '禁止编辑',
en_US: 'Disable Edit',
},
tip: {
type: 'i18n',
zh_CN: '属性: disableEdit | 说明: 禁止编辑',
en_US: 'prop: disableEdit | description: disableEdit',
},
},
setter: 'BoolSetter',
supportVariable: true,
defaultValue: false,
description: '禁止编辑',
},
{
name: 'autoHeight',
title: {
label: {
type: 'i18n',
zh_CN: '自动高度',
en_US: 'Auto Height',
},
tip: {
type: 'i18n',
zh_CN: '属性: autoHeight | 说明: 自动高度 true / {minRows: 2, maxRows: 4}',
en_US: 'prop: autoHeight | description: auto height',
},
},
setter: 'BoolSetter',
supportVariable: true,
defaultValue: false,
},
{
name: 'isPreview',
title: {
label: {
type: 'i18n',
zh_CN: '预览态',
en_US: 'Preview',
},
tip: {
type: 'i18n',
zh_CN: '属性: isPreview | 说明: 是否为预览态',
en_US: 'prop: isPreview | description: preview',
},
},
setter: 'BoolSetter',
supportVariable: true,
defaultValue: false,
},
// {
// 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: true,
// description: '是否禁用',
// },
{
name: 'hasLimitHint',
title: {
label: {
type: 'i18n',
zh_CN: '展示限制',
en_US: 'ShowLimit',
},
tip: {
type: 'i18n',
zh_CN: '属性: hasLimitHint | 说明: 是否展现最大长度样式',
en_US: 'prop: hasLimitHint | description: hasLimitHint',
},
},
setter: 'BoolSetter',
supportVariable: true,
description: '是否展现最大长度样式',
},
{
name: 'cutString',
title: {
label: {
type: 'i18n',
zh_CN: '是否截断',
en_US: 'Cut Off',
},
tip: {
type: 'i18n',
zh_CN: '属性: cutString | 说明: 是否截断超出字符串',
en_US: 'prop: cutString | description: whether cut off string',
},
},
setter: 'BoolSetter',
supportVariable: true,
description: '是否截断超出字符串',
},
{
name: 'trim',
title: {
label: {
type: 'i18n',
zh_CN: '是否 Trim',
en_US: 'Trim',
},
tip: {
type: 'i18n',
zh_CN: '属性: trim | 说明: onChange返回会自动去除头尾空字符',
en_US: 'prop: trim | description: whether trim when onChange called',
},
},
setter: 'BoolSetter',
supportVariable: true,
},
{
name: 'hasBorder',
title: {
label: {
type: 'i18n',
zh_CN: '显示边框',
en_US: 'ShowBorder',
},
tip: {
type: 'i18n',
zh_CN: '属性: hasBorder | 说明: 是否有边框',
en_US: 'prop: hasBorder | description: HasBorder',
},
},
setter: 'BoolSetter',
supportVariable: true,
},
{
name: 'autoFocus',
title: {
label: {
type: 'i18n',
zh_CN: '自动聚焦',
en_US: 'Auto Focus',
},
tip: {
type: 'i18n',
zh_CN: '属性: autoFocus | 说明: 自动聚焦',
en_US: 'prop: autoFocus | description: autoFocus',
},
},
setter: 'BoolSetter',
supportVariable: true,
description: '自动聚焦',
},
{
type: 'group',
title: '高级',
display: 'block',
items: [
{
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',
supportVariable: true,
},
{
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: true,
},
],
},
],
supports: {
style: true,
events: ['onPressEnter', 'onClear', 'onChange', 'onKeyDown', 'onFocus', 'onBlur'],
},
},
snippets: [
{
title: '多行文本框',
screenshot:
'https://alifd.oss-cn-hangzhou.aliyuncs.com/fusion-cool/icons/icon-light/ic_light_input.png',
schema: {
componentName: 'ProTextArea',
props: {
hasBorder: true,
size: 'medium',
autoComplete: 'off',
}
}
}
]
};