mirror of
https://github.com/alibaba/lowcode-engine.git
synced 2026-01-03 10:28:16 +00:00
1326 lines
34 KiB
JavaScript
1326 lines
34 KiB
JavaScript
export default {
|
||
version: '1.0.0',
|
||
packages: {
|
||
'@alifd/next': {
|
||
title: 'fusion组件库',
|
||
package: '@alifd/next',
|
||
version: '1.19.18',
|
||
urls: [
|
||
'https://unpkg.antfin-inc.com/@alife/next@1.19.18/dist/next.js',
|
||
'https://unpkg.antfin-inc.com/@alife/next@1.19.18/dist/next.css'
|
||
],
|
||
library: 'Next'
|
||
}
|
||
},
|
||
components: {
|
||
Page: {
|
||
componentName: 'Page',
|
||
title: '页面',
|
||
configure: {
|
||
events: {
|
||
supportedLifecycles: [
|
||
{
|
||
description: '初始化时',
|
||
name: 'constructor',
|
||
},
|
||
{
|
||
description: '装载后',
|
||
name: 'componentDidMount',
|
||
},
|
||
{
|
||
description: '更新时',
|
||
name: 'componentDidMount',
|
||
},
|
||
{
|
||
description: '卸载时',
|
||
name: 'componentWillUnmount',
|
||
},
|
||
]
|
||
},
|
||
component: {
|
||
isContainer: true,
|
||
}
|
||
}
|
||
},
|
||
Div: {
|
||
componentName: 'Div',
|
||
title: '容器',
|
||
configure: {
|
||
component: {
|
||
isContainer: true,
|
||
}
|
||
}
|
||
},
|
||
Button: {
|
||
componentName: 'Button',
|
||
title: '按钮',
|
||
devMode: 'proCode',
|
||
npm: {
|
||
package: '@alifd/next',
|
||
version: '1.19.18',
|
||
destructuring: true,
|
||
exportName: 'Button'
|
||
},
|
||
props: [
|
||
{
|
||
name: 'prefix',
|
||
propType: 'string',
|
||
defaultValue: "'next-'"
|
||
},
|
||
{
|
||
name: 'rtl',
|
||
propType: 'bool'
|
||
},
|
||
{
|
||
name: 'type',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['primary', 'secondary', 'normal']
|
||
},
|
||
description: '按钮的类型',
|
||
defaultValue: "'normal'"
|
||
},
|
||
{
|
||
name: 'size',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['small', 'medium', 'large']
|
||
},
|
||
description: '按钮的尺寸',
|
||
defaultValue: "'medium'"
|
||
},
|
||
{
|
||
name: 'iconSize',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['xxs', 'xs', 'small', 'medium', 'large', 'xl', 'xxl', 'xxxl']
|
||
},
|
||
description: '按钮中 Icon 的尺寸,用于替代 Icon 的默认大小'
|
||
},
|
||
{
|
||
name: 'htmlType',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['submit', 'reset', 'button']
|
||
},
|
||
description: "当 component = 'button' 时,设置 button 标签的 type 值",
|
||
defaultValue: "'button'"
|
||
},
|
||
{
|
||
name: 'component',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['button', 'a', 'div', 'span']
|
||
},
|
||
description: '设置标签类型',
|
||
defaultValue: "'button'"
|
||
},
|
||
{
|
||
name: 'loading',
|
||
propType: 'bool',
|
||
description: '设置按钮的载入状态',
|
||
defaultValue: 'false'
|
||
},
|
||
{
|
||
name: 'ghost',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: [true, false, 'light', 'dark']
|
||
},
|
||
description: '是否为幽灵按钮',
|
||
defaultValue: 'false'
|
||
},
|
||
{
|
||
name: 'text',
|
||
propType: 'bool',
|
||
description: '是否为文本按钮',
|
||
defaultValue: 'false'
|
||
},
|
||
{
|
||
name: 'warning',
|
||
propType: 'bool',
|
||
description: '是否为警告按钮',
|
||
defaultValue: 'false'
|
||
},
|
||
{
|
||
name: 'disabled',
|
||
propType: 'bool',
|
||
description: '是否禁用',
|
||
defaultValue: 'false'
|
||
},
|
||
{
|
||
name: 'onClick',
|
||
propType: 'func',
|
||
description: '点击按钮的回调\n@param {Object} e Event Object',
|
||
defaultValue: '() => {}'
|
||
},
|
||
{
|
||
name: 'className',
|
||
propType: 'string'
|
||
},
|
||
{
|
||
name: 'onMouseUp',
|
||
propType: 'func'
|
||
},
|
||
{
|
||
name: 'children',
|
||
propType: 'node'
|
||
}
|
||
]
|
||
},
|
||
'Button.Group': {
|
||
componentName: 'Button.Group',
|
||
title: '按钮组',
|
||
devMode: 'proCode',
|
||
npm: {
|
||
package: '@alifd/next',
|
||
version: '1.19.18',
|
||
destructuring: true,
|
||
exportName: 'Button',
|
||
subName: 'Group'
|
||
},
|
||
props: [
|
||
{
|
||
name: 'rtl',
|
||
propType: 'bool'
|
||
},
|
||
{
|
||
name: 'prefix',
|
||
propType: 'string',
|
||
defaultValue: "'next-'"
|
||
},
|
||
{
|
||
name: 'size',
|
||
propType: 'string',
|
||
description: '统一设置 Button 组件的按钮大小',
|
||
defaultValue: "'medium'"
|
||
},
|
||
{
|
||
name: 'className',
|
||
propType: 'string'
|
||
},
|
||
{
|
||
name: 'children',
|
||
propType: 'node'
|
||
}
|
||
],
|
||
configure: {
|
||
component: {
|
||
isContainer: true,
|
||
nestingRule: {
|
||
childWhitelist: 'Button'
|
||
}
|
||
}
|
||
}
|
||
},
|
||
Input: {
|
||
componentName: 'Input',
|
||
title: '输入框',
|
||
devMode: 'proCode',
|
||
npm: {
|
||
package: '@alifd/next',
|
||
version: '1.19.18',
|
||
destructuring: true,
|
||
exportName: 'Input'
|
||
},
|
||
props: [
|
||
{
|
||
name: 'label',
|
||
propType: 'node',
|
||
description: 'label'
|
||
},
|
||
{
|
||
name: 'hasClear',
|
||
propType: 'bool',
|
||
description: '是否出现clear按钮'
|
||
},
|
||
{
|
||
name: 'hasBorder',
|
||
propType: 'bool',
|
||
description: '是否有边框',
|
||
defaultValue: 'true'
|
||
},
|
||
{
|
||
name: 'state',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['error', 'loading', 'success', 'warning']
|
||
},
|
||
description: '状态\n@enumdesc 错误, 校验中, 成功, 警告'
|
||
},
|
||
{
|
||
name: 'size',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['small', 'medium', 'large']
|
||
},
|
||
description: '尺寸\n@enumdesc 小, 中, 大',
|
||
defaultValue: "'medium'"
|
||
},
|
||
{
|
||
name: 'onPressEnter',
|
||
propType: 'func',
|
||
description: '按下回车的回调',
|
||
defaultValue: 'func.noop'
|
||
},
|
||
{
|
||
name: 'onClear',
|
||
propType: 'func'
|
||
},
|
||
{
|
||
name: 'htmlType',
|
||
propType: 'string',
|
||
description: '原生type'
|
||
},
|
||
{
|
||
name: 'htmlSize',
|
||
propType: 'string'
|
||
},
|
||
{
|
||
name: 'hint',
|
||
propType: 'string',
|
||
description: '水印 (Icon的type类型,和hasClear占用一个地方)'
|
||
},
|
||
{
|
||
name: 'innerBefore',
|
||
propType: 'node',
|
||
description: '文字前附加内容'
|
||
},
|
||
{
|
||
name: 'innerAfter',
|
||
propType: 'node',
|
||
description: '文字后附加内容'
|
||
},
|
||
{
|
||
name: 'addonBefore',
|
||
propType: 'node',
|
||
description: '输入框前附加内容'
|
||
},
|
||
{
|
||
name: 'addonAfter',
|
||
propType: 'node',
|
||
description: '输入框后附加内容'
|
||
},
|
||
{
|
||
name: 'addonTextBefore',
|
||
propType: 'node',
|
||
description: '输入框前附加文字'
|
||
},
|
||
{
|
||
name: 'addonTextAfter',
|
||
propType: 'node',
|
||
description: '输入框后附加文字'
|
||
},
|
||
{
|
||
name: 'autoComplete',
|
||
propType: 'string',
|
||
description: '(原生input支持)',
|
||
defaultValue: "'off'"
|
||
},
|
||
{
|
||
name: 'autoFocus',
|
||
propType: 'bool',
|
||
description: '自动聚焦(原生input支持)'
|
||
},
|
||
{
|
||
name: 'inputRender',
|
||
propType: 'func',
|
||
defaultValue: 'el => el'
|
||
},
|
||
{
|
||
name: 'extra',
|
||
propType: 'node'
|
||
},
|
||
{
|
||
name: 'innerBeforeClassName',
|
||
propType: 'string'
|
||
},
|
||
{
|
||
name: 'innerAfterClassName',
|
||
propType: 'string'
|
||
},
|
||
{
|
||
name: 'isPreview',
|
||
propType: 'bool',
|
||
description: '是否为预览态',
|
||
defaultValue: 'false'
|
||
},
|
||
{
|
||
name: 'renderPreview',
|
||
propType: 'func',
|
||
description: '预览态模式下渲染的内容\n@param {number} value 评分值'
|
||
}
|
||
]
|
||
},
|
||
Form: {
|
||
componentName: 'Form',
|
||
title: '表单容器',
|
||
devMode: 'proCode',
|
||
npm: {
|
||
package: '@alifd/next',
|
||
version: '1.19.18',
|
||
destructuring: true,
|
||
exportName: 'Form'
|
||
},
|
||
props: [
|
||
{
|
||
name: 'prefix',
|
||
propType: 'string',
|
||
description: '样式前缀',
|
||
defaultValue: '"next-"'
|
||
},
|
||
{
|
||
name: 'inline',
|
||
propType: 'bool',
|
||
description: '内联表单'
|
||
},
|
||
{
|
||
name: 'size',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['large', 'medium', 'small']
|
||
},
|
||
description:
|
||
'单个 Item 的 size 自定义,优先级高于 Form 的 size, 并且当组件与 Item 一起使用时,组件自身设置 size 属性无效。\n@enumdesc 大, 中, 小',
|
||
defaultValue: '"medium"'
|
||
},
|
||
{
|
||
name: 'fullWidth',
|
||
propType: 'bool',
|
||
description: '单个 Item 中表单类组件宽度是否是100%'
|
||
},
|
||
{
|
||
name: 'labelAlign',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['top', 'left', 'inset']
|
||
},
|
||
description: '标签的位置\n@enumdesc 上, 左, 内',
|
||
defaultValue: '"left"'
|
||
},
|
||
{
|
||
name: 'labelTextAlign',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['left', 'right']
|
||
},
|
||
description: '标签的左右对齐方式\n@enumdesc 左, 右'
|
||
},
|
||
{
|
||
name: 'field',
|
||
propType: 'any',
|
||
description: 'field 实例, 传 false 会禁用 field'
|
||
},
|
||
{
|
||
name: 'saveField',
|
||
propType: 'func',
|
||
description: '保存 Form 自动生成的 field 对象',
|
||
defaultValue: 'func.noop'
|
||
},
|
||
{
|
||
name: 'labelCol',
|
||
propType: 'object',
|
||
description: '控制第一级 Item 的 labelCol'
|
||
},
|
||
{
|
||
name: 'wrapperCol',
|
||
propType: 'object',
|
||
description: '控制第一级 Item 的 wrapperCol'
|
||
},
|
||
{
|
||
name: 'onSubmit',
|
||
propType: 'func',
|
||
description: 'form内有 `htmlType="submit"` 的元素的时候会触发',
|
||
defaultValue: 'function preventDefault(e) {\n e.preventDefault();\n}'
|
||
},
|
||
{
|
||
name: 'children',
|
||
propType: 'any',
|
||
description: '子元素'
|
||
},
|
||
{
|
||
name: 'className',
|
||
propType: 'string',
|
||
description: '扩展class'
|
||
},
|
||
{
|
||
name: 'style',
|
||
propType: 'object',
|
||
description: '自定义内联样式'
|
||
},
|
||
{
|
||
name: 'value',
|
||
propType: 'object',
|
||
description: '表单数值'
|
||
},
|
||
{
|
||
name: 'onChange',
|
||
propType: 'func',
|
||
description:
|
||
'表单变化回调\n@param {Object} values 表单数据\n@param {Object} item 详细\n@param {String} item.name 变化的组件名\n@param {String} item.value 变化的数据\n@param {Object} item.field field 实例',
|
||
defaultValue: 'func.noop'
|
||
},
|
||
{
|
||
name: 'component',
|
||
propType: {
|
||
type: 'oneOfType',
|
||
value: ['string', 'func']
|
||
},
|
||
description: '设置标签类型',
|
||
defaultValue: '"form"'
|
||
},
|
||
{
|
||
name: 'fieldOptions',
|
||
propType: 'object'
|
||
},
|
||
{
|
||
name: 'rtl',
|
||
propType: 'bool'
|
||
},
|
||
{
|
||
name: 'device',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['phone', 'tablet', 'desktop']
|
||
},
|
||
description: '预设屏幕宽度',
|
||
defaultValue: '"desktop"'
|
||
},
|
||
{
|
||
name: 'responsive',
|
||
propType: 'bool',
|
||
description: '是否开启内置的响应式布局 (使用ResponsiveGrid)'
|
||
},
|
||
{
|
||
name: 'isPreview',
|
||
propType: 'bool',
|
||
description: '是否开启预览态'
|
||
}
|
||
],
|
||
configure: {
|
||
component: {
|
||
isContainer: true,
|
||
}
|
||
}
|
||
},
|
||
'Form.Item': {
|
||
componentName: 'Form.Item',
|
||
title: '表单项',
|
||
devMode: 'proCode',
|
||
npm: {
|
||
package: '@alifd/next',
|
||
version: '1.19.18',
|
||
destructuring: true,
|
||
exportName: 'Form',
|
||
subName: 'Item'
|
||
},
|
||
props: [
|
||
{
|
||
name: 'prefix',
|
||
propType: 'string',
|
||
description: '样式前缀',
|
||
defaultValue: "'next-'"
|
||
},
|
||
{
|
||
name: 'rtl',
|
||
propType: 'bool'
|
||
},
|
||
{
|
||
name: 'label',
|
||
propType: 'node',
|
||
description: 'label 标签的文本'
|
||
},
|
||
{
|
||
name: 'labelCol',
|
||
propType: 'object',
|
||
description:
|
||
'label 标签布局,通 `<Col>` 组件,设置 span offset 值,如 {span: 8, offset: 16},该项仅在垂直表单有效'
|
||
},
|
||
{
|
||
name: 'wrapperCol',
|
||
propType: 'object',
|
||
description: '需要为输入控件设置布局样式时,使用该属性,用法同 labelCol'
|
||
},
|
||
{
|
||
name: 'help',
|
||
propType: 'node',
|
||
description: '自定义提示信息,如不设置,则会根据校验规则自动生成.'
|
||
},
|
||
{
|
||
name: 'extra',
|
||
propType: 'node',
|
||
description:
|
||
'额外的提示信息,和 help 类似,当需要错误信息和提示文案同时出现时,可以使用这个。 位于错误信息后面'
|
||
},
|
||
{
|
||
name: 'validateState',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['error', 'success', 'loading', 'warning']
|
||
},
|
||
description: '校验状态,如不设置,则会根据校验规则自动生成\n@enumdesc 失败, 成功, 校验中, 警告'
|
||
},
|
||
{
|
||
name: 'hasFeedback',
|
||
propType: 'bool',
|
||
description: '配合 validateState 属性使用,是否展示 success/loading 的校验状态图标, 目前只有Input支持',
|
||
defaultValue: 'false'
|
||
},
|
||
{
|
||
name: 'style',
|
||
propType: 'object',
|
||
description: '自定义内联样式'
|
||
},
|
||
{
|
||
name: 'id',
|
||
propType: 'string'
|
||
},
|
||
{
|
||
name: 'children',
|
||
propType: {
|
||
type: 'oneOfType',
|
||
value: ['node', 'func']
|
||
},
|
||
description: 'node 或者 function(values)'
|
||
},
|
||
{
|
||
name: 'size',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['large', 'small', 'medium']
|
||
},
|
||
description:
|
||
'单个 Item 的 size 自定义,优先级高于 Form 的 size, 并且当组件与 Item 一起使用时,组件自身设置 size 属性无效。'
|
||
},
|
||
{
|
||
name: 'fullWidth',
|
||
propType: 'bool',
|
||
description: '单个 Item 中表单类组件宽度是否是100%'
|
||
},
|
||
{
|
||
name: 'labelAlign',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['top', 'left', 'inset']
|
||
},
|
||
description: '标签的位置\n@enumdesc 上, 左, 内'
|
||
},
|
||
{
|
||
name: 'labelTextAlign',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['left', 'right']
|
||
},
|
||
description: '标签的左右对齐方式\n@enumdesc 左, 右'
|
||
},
|
||
{
|
||
name: 'className',
|
||
propType: 'string',
|
||
description: '扩展class'
|
||
},
|
||
{
|
||
name: 'required',
|
||
propType: 'bool',
|
||
description: '[表单校验] 不能为空'
|
||
},
|
||
{
|
||
name: 'asterisk',
|
||
propType: 'bool',
|
||
description: 'required 的星号是否显示'
|
||
},
|
||
{
|
||
name: 'requiredMessage',
|
||
propType: 'string',
|
||
description: 'required 自定义错误信息'
|
||
},
|
||
{
|
||
name: 'requiredTrigger',
|
||
propType: {
|
||
type: 'oneOfType',
|
||
value: ['string', 'array']
|
||
},
|
||
description: 'required 自定义触发方式'
|
||
},
|
||
{
|
||
name: 'min',
|
||
propType: 'number',
|
||
description: '[表单校验] 最小值'
|
||
},
|
||
{
|
||
name: 'max',
|
||
propType: 'number',
|
||
description: '[表单校验] 最大值'
|
||
},
|
||
{
|
||
name: 'minmaxMessage',
|
||
propType: 'string',
|
||
description: 'min/max 自定义错误信息'
|
||
},
|
||
{
|
||
name: 'minmaxTrigger',
|
||
propType: {
|
||
type: 'oneOfType',
|
||
value: ['string', 'array']
|
||
},
|
||
description: 'min/max 自定义触发方式'
|
||
},
|
||
{
|
||
name: 'minLength',
|
||
propType: 'number',
|
||
description: '[表单校验] 字符串最小长度 / 数组最小个数'
|
||
},
|
||
{
|
||
name: 'maxLength',
|
||
propType: 'number',
|
||
description: '[表单校验] 字符串最大长度 / 数组最大个数'
|
||
},
|
||
{
|
||
name: 'minmaxLengthMessage',
|
||
propType: 'string',
|
||
description: 'minLength/maxLength 自定义错误信息'
|
||
},
|
||
{
|
||
name: 'minmaxLengthTrigger',
|
||
propType: {
|
||
type: 'oneOfType',
|
||
value: ['string', 'array']
|
||
},
|
||
description: 'minLength/maxLength 自定义触发方式'
|
||
},
|
||
{
|
||
name: 'length',
|
||
propType: 'number',
|
||
description: '[表单校验] 字符串精确长度 / 数组精确个数'
|
||
},
|
||
{
|
||
name: 'lengthMessage',
|
||
propType: 'string',
|
||
description: 'length 自定义错误信息'
|
||
},
|
||
{
|
||
name: 'lengthTrigger',
|
||
propType: {
|
||
type: 'oneOfType',
|
||
value: ['string', 'array']
|
||
},
|
||
description: 'length 自定义触发方式'
|
||
},
|
||
{
|
||
name: 'pattern',
|
||
propType: 'any',
|
||
description: '正则校验'
|
||
},
|
||
{
|
||
name: 'patternMessage',
|
||
propType: 'string',
|
||
description: 'pattern 自定义错误信息'
|
||
},
|
||
{
|
||
name: 'patternTrigger',
|
||
propType: {
|
||
type: 'oneOfType',
|
||
value: ['string', 'array']
|
||
},
|
||
description: 'pattern 自定义触发方式'
|
||
},
|
||
{
|
||
name: 'format',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['number', 'email', 'url', 'tel']
|
||
},
|
||
description: '[表单校验] 四种常用的 pattern'
|
||
},
|
||
{
|
||
name: 'formatMessage',
|
||
propType: 'string',
|
||
description: 'format 自定义错误信息'
|
||
},
|
||
{
|
||
name: 'formatTrigger',
|
||
propType: {
|
||
type: 'oneOfType',
|
||
value: ['string', 'array']
|
||
},
|
||
description: 'format 自定义触发方式'
|
||
},
|
||
{
|
||
name: 'validator',
|
||
propType: 'func',
|
||
description: '[表单校验] 自定义校验函数'
|
||
},
|
||
{
|
||
name: 'validatorTrigger',
|
||
propType: {
|
||
type: 'oneOfType',
|
||
value: ['string', 'array']
|
||
},
|
||
description: 'validator 自定义触发方式'
|
||
},
|
||
{
|
||
name: 'autoValidate',
|
||
propType: 'bool',
|
||
description: '是否修改数据时自动触发校验'
|
||
},
|
||
{
|
||
name: 'device',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['phone', 'tablet', 'desktop']
|
||
},
|
||
description: '预设屏幕宽度'
|
||
},
|
||
{
|
||
name: 'responsive',
|
||
propType: 'bool'
|
||
},
|
||
{
|
||
name: 'colSpan',
|
||
propType: 'number',
|
||
description: '在响应式布局模式下,表单项占多少列'
|
||
},
|
||
{
|
||
name: 'labelWidth',
|
||
propType: {
|
||
type: 'oneOfType',
|
||
value: ['string', 'number']
|
||
},
|
||
description: '在响应式布局下,且label在左边时,label的宽度是多少',
|
||
defaultValue: '100'
|
||
},
|
||
{
|
||
name: 'isPreview',
|
||
propType: 'bool',
|
||
description: '是否开启预览态'
|
||
},
|
||
{
|
||
name: 'renderPreview',
|
||
propType: 'func',
|
||
description: '预览态模式下渲染的内容\n@param {any} value 根据包裹的组件的 value 类型而决定'
|
||
}
|
||
],
|
||
configure: {
|
||
component: {
|
||
isContainer: true,
|
||
nestingRule: {
|
||
parentWhitelist: 'Form'
|
||
}
|
||
}
|
||
}
|
||
},
|
||
NumberPicker: {
|
||
componentName: 'NumberPicker',
|
||
title: '数字输入',
|
||
devMode: 'proCode',
|
||
npm: {
|
||
package: '@alifd/next',
|
||
version: '1.19.18',
|
||
destructuring: true,
|
||
exportName: 'NumberPicker'
|
||
},
|
||
props: [
|
||
{
|
||
name: 'prefix',
|
||
propType: 'string',
|
||
description: '样式前缀',
|
||
defaultValue: '"next-"'
|
||
},
|
||
{
|
||
name: 'type',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['normal', 'inline']
|
||
},
|
||
description: '设置类型\n@enumdesc 普通, 内联',
|
||
defaultValue: '"normal"'
|
||
},
|
||
{
|
||
name: 'size',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['large', 'medium']
|
||
},
|
||
description: '大小',
|
||
defaultValue: '"medium"'
|
||
},
|
||
{
|
||
name: 'value',
|
||
propType: 'number',
|
||
description: '当前值'
|
||
},
|
||
{
|
||
name: 'defaultValue',
|
||
propType: 'number',
|
||
description: '默认值'
|
||
},
|
||
{
|
||
name: 'disabled',
|
||
propType: 'bool',
|
||
description: '是否禁用'
|
||
},
|
||
{
|
||
name: 'step',
|
||
propType: {
|
||
type: 'oneOfType',
|
||
value: ['number', 'string']
|
||
},
|
||
description: '步长',
|
||
defaultValue: '1'
|
||
},
|
||
{
|
||
name: 'precision',
|
||
propType: 'number',
|
||
description: '保留小数点后位数',
|
||
defaultValue: '0'
|
||
},
|
||
{
|
||
name: 'editable',
|
||
propType: 'bool',
|
||
description: '用户是否可以输入',
|
||
defaultValue: 'true'
|
||
},
|
||
{
|
||
name: 'autoFocus',
|
||
propType: 'bool',
|
||
description: '自动焦点'
|
||
},
|
||
{
|
||
name: 'onChange',
|
||
propType: 'func',
|
||
description: '数值被改变的事件\n@param {Number} value 数据\n@param {Event} e DOM事件对象',
|
||
defaultValue: 'func.noop'
|
||
},
|
||
{
|
||
name: 'onKeyDown',
|
||
propType: 'func',
|
||
description: '键盘按下',
|
||
defaultValue: 'func.noop'
|
||
},
|
||
{
|
||
name: 'onFocus',
|
||
propType: 'func',
|
||
description: '焦点获得'
|
||
},
|
||
{
|
||
name: 'onBlur',
|
||
propType: 'func',
|
||
description: '焦点失去',
|
||
defaultValue: 'func.noop'
|
||
},
|
||
{
|
||
name: 'onCorrect',
|
||
propType: 'func',
|
||
description: '数值订正后的回调\n@param {Object} obj {currentValue,oldValue:String}',
|
||
defaultValue: 'func.noop'
|
||
},
|
||
{
|
||
name: 'onDisabled',
|
||
propType: 'func',
|
||
defaultValue: 'func.noop'
|
||
},
|
||
{
|
||
name: 'max',
|
||
propType: 'number',
|
||
description: '最大值',
|
||
defaultValue: 'Infinity'
|
||
},
|
||
{
|
||
name: 'min',
|
||
propType: 'number',
|
||
description: '最小值',
|
||
defaultValue: '-Infinity'
|
||
},
|
||
{
|
||
name: 'className',
|
||
propType: 'string',
|
||
description: '自定义class'
|
||
},
|
||
{
|
||
name: 'style',
|
||
propType: 'object',
|
||
description: '自定义内联样式',
|
||
defaultValue: '{}'
|
||
},
|
||
{
|
||
name: 'state',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['error']
|
||
}
|
||
},
|
||
{
|
||
name: 'format',
|
||
propType: 'func',
|
||
description: '格式化当前值\n@param {Number} value\n@return {String|Number}'
|
||
},
|
||
{
|
||
name: 'upBtnProps',
|
||
propType: 'object',
|
||
description: '增加按钮的props'
|
||
},
|
||
{
|
||
name: 'downBtnProps',
|
||
propType: 'object',
|
||
description: '减少按钮的props'
|
||
},
|
||
{
|
||
name: 'label',
|
||
propType: 'node',
|
||
description: '内联 label'
|
||
},
|
||
{
|
||
name: 'innerAfter',
|
||
propType: 'node',
|
||
description: 'inner after'
|
||
},
|
||
{
|
||
name: 'rtl',
|
||
propType: 'bool'
|
||
},
|
||
{
|
||
name: 'isPreview',
|
||
propType: 'bool',
|
||
description: '是否为预览态'
|
||
},
|
||
{
|
||
name: 'renderPreview',
|
||
propType: 'func',
|
||
description: '预览态模式下渲染的内容\n@param {number} value 评分值'
|
||
},
|
||
{
|
||
name: 'device',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['phone', 'tablet', 'desktop']
|
||
},
|
||
description: '预设屏幕宽度'
|
||
}
|
||
]
|
||
},
|
||
Select: {
|
||
componentName: 'Select',
|
||
title: '下拉',
|
||
devMode: 'proCode',
|
||
npm: {
|
||
package: '@alifd/next',
|
||
version: '1.19.18',
|
||
destructuring: true,
|
||
exportName: 'Select'
|
||
},
|
||
props: [
|
||
{
|
||
name: 'mode',
|
||
propType: {
|
||
type: 'oneOf',
|
||
value: ['single', 'multiple', 'tag']
|
||
},
|
||
description: '选择器模式',
|
||
defaultValue: '"single"'
|
||
},
|
||
{
|
||
name: 'value',
|
||
propType: 'any',
|
||
description: '当前值,用于受控模式'
|
||
},
|
||
{
|
||
name: 'defaultValue',
|
||
propType: 'any',
|
||
description: '初始的默认值'
|
||
},
|
||
{
|
||
name: 'onChange',
|
||
propType: 'func',
|
||
description:
|
||
"Select发生改变时触发的回调\n@param {*} value 选中的值\n@param {String} actionType 触发的方式, 'itemClick', 'enter', 'tag'\n@param {*} item 选中的值的对象数据 (useDetailValue=false有效)"
|
||
},
|
||
{
|
||
name: 'dataSource',
|
||
propType: {
|
||
type: 'arrayOf',
|
||
value: {
|
||
type: 'oneOfType',
|
||
value: [
|
||
{
|
||
type: 'shape',
|
||
value: [
|
||
{
|
||
name: 'value',
|
||
propType: 'any'
|
||
},
|
||
{
|
||
name: 'label',
|
||
propType: 'any'
|
||
},
|
||
{
|
||
name: 'disabled',
|
||
propType: 'bool'
|
||
},
|
||
{
|
||
name: 'children',
|
||
propType: 'array'
|
||
}
|
||
]
|
||
},
|
||
'bool',
|
||
'number',
|
||
'string'
|
||
]
|
||
}
|
||
},
|
||
description: '传入的数据源,可以动态渲染子项,详见 [dataSource的使用](#dataSource的使用)'
|
||
},
|
||
{
|
||
name: 'hasBorder',
|
||
propType: 'bool',
|
||
description: '是否有边框'
|
||
},
|
||
{
|
||
name: 'hasArrow',
|
||
propType: 'bool',
|
||
description: '是否有下拉箭头',
|
||
defaultValue: 'true'
|
||
},
|
||
{
|
||
name: 'showSearch',
|
||
propType: 'bool',
|
||
description: '展开后是否能搜索(tag 模式下固定为true)',
|
||
defaultValue: 'false'
|
||
},
|
||
{
|
||
name: 'onSearch',
|
||
propType: 'func',
|
||
description: '当搜索框值变化时回调\n@param {String} value 数据'
|
||
},
|
||
{
|
||
name: 'onSearchClear',
|
||
propType: 'func',
|
||
description:
|
||
"当搜索框值被清空时候的回调\n@param {String} actionType 触发的方式, 'select'(选择清空), 'popupClose'(弹窗关闭清空)"
|
||
},
|
||
{
|
||
name: 'hasSelectAll',
|
||
propType: {
|
||
type: 'oneOfType',
|
||
value: ['bool', 'string']
|
||
},
|
||
description: '多选模式下是否有全选功能'
|
||
},
|
||
{
|
||
name: 'fillProps',
|
||
propType: 'string',
|
||
description: '填充到选择框里的值的 key\b\b'
|
||
},
|
||
{
|
||
name: 'useDetailValue',
|
||
propType: 'bool',
|
||
description: 'onChange 返回的 value 使用 dataSource 的对象'
|
||
},
|
||
{
|
||
name: 'cacheValue',
|
||
propType: 'bool',
|
||
description: 'dataSource 变化的时是否保留已选的内容',
|
||
defaultValue: 'true'
|
||
},
|
||
{
|
||
name: 'valueRender',
|
||
propType: 'func',
|
||
description:
|
||
'渲染 Select 展现内容的方法\n@param {Object} item 渲染节点的item\n@return {ReactNode} 展现内容\n@default item => item.label \\|\\| item.value'
|
||
},
|
||
{
|
||
name: 'itemRender',
|
||
propType: 'func',
|
||
description:
|
||
'渲染 MenuItem 内容的方法\n@param {Object} item 渲染节点的item\n@param {String} searchValue 搜索关键字(如果开启搜索)\n@return {ReactNode} item node'
|
||
},
|
||
{
|
||
name: 'notFoundContent',
|
||
propType: 'node',
|
||
description: '弹层内容为空的文案'
|
||
},
|
||
{
|
||
name: 'style',
|
||
propType: 'object'
|
||
},
|
||
{
|
||
name: 'searchValue',
|
||
propType: 'string',
|
||
description: '受控搜索值,一般不需要设置\n@type {[type]}'
|
||
},
|
||
{
|
||
name: 'tagInline',
|
||
propType: 'bool',
|
||
description: '是否一行显示,仅在 mode 为 multiple 的时候生效',
|
||
defaultValue: 'false'
|
||
},
|
||
{
|
||
name: 'maxTagCount',
|
||
propType: 'number',
|
||
description: '最多显示多少个 tag'
|
||
},
|
||
{
|
||
name: 'maxTagPlaceholder',
|
||
propType: 'func',
|
||
description:
|
||
'隐藏多余 tag 时显示的内容,在 maxTagCount 生效时起作用\n@param {number} selectedValues 当前已选中的元素\n@param {number} totalValues 总待选元素'
|
||
},
|
||
{
|
||
name: 'hiddenSelected',
|
||
propType: 'bool',
|
||
description: '选择后是否立即隐藏菜单 (mode=multiple/tag 模式生效)'
|
||
},
|
||
{
|
||
name: 'onRemove',
|
||
propType: 'func',
|
||
description: 'tag 删除回调\n@param {object} item 渲染节点的item'
|
||
},
|
||
{
|
||
name: 'onFocus',
|
||
propType: 'func',
|
||
description: '焦点事件'
|
||
},
|
||
{
|
||
name: 'onBlur',
|
||
propType: 'func',
|
||
description: '失去焦点事件'
|
||
},
|
||
{
|
||
name: 'onMouseEnter',
|
||
propType: 'func'
|
||
},
|
||
{
|
||
name: 'onMouseLeave',
|
||
propType: 'func'
|
||
},
|
||
{
|
||
name: 'onKeyDown',
|
||
propType: 'func'
|
||
},
|
||
{
|
||
name: 'locale',
|
||
propType: 'object',
|
||
defaultValue: 'zhCN.Select'
|
||
}
|
||
],
|
||
configure: {
|
||
component: {
|
||
isContainer: true,
|
||
nestingRule: {
|
||
childWhitelist: 'Select.Option'
|
||
}
|
||
}
|
||
}
|
||
},
|
||
'Select.Option': {
|
||
componentName: 'Select.Option',
|
||
title: '选择项',
|
||
devMode: 'proCode',
|
||
npm: {
|
||
package: '@alifd/next',
|
||
version: '1.19.18',
|
||
destructuring: true,
|
||
exportName: 'Select',
|
||
subName: 'Option'
|
||
},
|
||
props: [
|
||
{
|
||
name: 'value',
|
||
propType: {
|
||
type: 'any',
|
||
isRequired: true
|
||
},
|
||
description: '选项值'
|
||
},
|
||
{
|
||
name: 'disabled',
|
||
propType: 'bool',
|
||
description: '是否禁用'
|
||
},
|
||
{
|
||
name: 'children',
|
||
propType: 'any'
|
||
}
|
||
],
|
||
configure: {
|
||
component: {
|
||
isContainer: true,
|
||
nestingRule: {
|
||
parentWhitelist: 'Select'
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
componentList: [
|
||
{
|
||
title: '基础',
|
||
icon: '',
|
||
children: [
|
||
{
|
||
componentName: 'Button',
|
||
title: '按钮',
|
||
icon: '',
|
||
package: '@alife/next',
|
||
snippets: [
|
||
{
|
||
title: 'private',
|
||
screenshort: '',
|
||
schema: {
|
||
componentName: 'Button',
|
||
props: {
|
||
type: 'primary'
|
||
},
|
||
children: 'Primary'
|
||
}
|
||
},
|
||
{
|
||
title: 'secondary',
|
||
screenshort: '',
|
||
schema: {
|
||
componentName: 'Button',
|
||
props: {
|
||
type: 'secondary'
|
||
},
|
||
children: 'secondary'
|
||
}
|
||
},
|
||
{
|
||
title: 'normal',
|
||
screenshort: '',
|
||
schema: {
|
||
componentName: 'Button',
|
||
props: {
|
||
type: 'normal'
|
||
},
|
||
children: 'normal'
|
||
}
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
title: '表单',
|
||
icon: '',
|
||
children: [
|
||
{
|
||
componentName: 'Input',
|
||
title: '输入框',
|
||
icon: '',
|
||
package: '@alife/next',
|
||
snippets: [
|
||
{
|
||
title: '普通',
|
||
screenshort: '',
|
||
schema: {
|
||
componentName: 'Input',
|
||
props: {}
|
||
}
|
||
}
|
||
]
|
||
}
|
||
]
|
||
}
|
||
]
|
||
};
|